使用 openFileDialog 将 Excel 文件导入数据网格视图
本文关键字:数据 数据网 网格 视图 导入 文件 openFileDialog Excel 使用 | 更新日期: 2023-09-27 17:55:37
我有一个带有加载按钮的通知。 当我单击加载时,我选择要加载到数据网格视图中的文件。 当我单击该文件时,似乎填充了正确数量的行,但没有显示任何内容。 我不确定我错过了什么。 "首字母缩略词"是我的 excel 选项卡/工作表的名称。
private void btnImport_Click_1(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "XLS files (*.xls, *.xlt)|*.xls;*.xlt|XLSX files (*.xlsx, *.xlsm, *.xltx, *.xltm)|*.xlsx;*.xlsm;*.xltx;*.xltm|ODS files (*.ods, *.ots)|*.ods;*.ots|CSV files (*.csv, *.tsv)|*.csv;*.tsv|HTML files (*.html, *.htm)|*.html;*.htm";
openFileDialog.FilterIndex = 2;
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
System.Data.OleDb.OleDbConnection MyConnection;
System.Data.DataSet DtSet;
System.Data.OleDb.OleDbDataAdapter MyCommand;
MyConnection = new System.Data.OleDb.OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + openFileDialog.FileName + "';Extended Properties=Excel 8.0;");
MyConnection.Open();
MyCommand = new System.Data.OleDb.OleDbDataAdapter("select * from [Acronyms$]", MyConnection);
DtSet = new System.Data.DataSet();
MyCommand.Fill(DtSet);
dgvExcelList.DataSource = DtSet.Tables[0];
MyConnection.Close();
}
}
检查以确保通过 GUI 为 DataGridView 创建的列已填充 DataProperty 值。