using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; namespace ExcelDataReaderDemo { public partial class DemoForm : Form { private ExcelDataReader.ExcelDataReader spreadsheet = null; public DemoForm() { InitializeComponent(); } private void cmdLoad_Click(object sender, EventArgs e) { try { if (openDialog.ShowDialog() != DialogResult.OK) return; grpData.Enabled = false; string filename = openDialog.FileName; FileStream fs = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.Delete | FileShare.ReadWrite); spreadsheet = new ExcelDataReader.ExcelDataReader(fs); fs.Close(); cboSheet.Items.Clear(); cboSheet.DisplayMember = "TableName"; foreach (DataTable dt in spreadsheet.WorkbookData.Tables) { cboSheet.Items.Add(dt); } if (cboSheet.Items.Count == 0) return; grpData.Enabled = true; cboSheet.SelectedIndex = 0; } catch (Exception ex) { MessageBox.Show("Failed to read file: \n" + ex.Message); } } private void cboSheet_SelectedIndexChanged(object sender, EventArgs e) { if (((ComboBox)sender).SelectedItem == null) return; grdActiveSheet.DataSource = ((ComboBox)sender).SelectedItem; } } }