【发布时间】:2020-09-19 01:55:24
【问题描述】:
我有这个代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace TabeleExcel
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void cboSheet_SelectedIndexChanged(object sender, EventArgs e)
{
DataTable dt = tableCollection[cboSheet.SelectedItem.ToString()];
dataGridView1.DataSource = dt;
}
DataTableCollection tableCollection;
private void btnBrowse_Click(object sender, EventArgs e)
{
using(OpenFileDialog openFileDialog=new OpenFileDialog() { Filter="Excel|*.xls|Excel|*.xlsx" })
{
if(openFileDialog.ShowDialog()==DialogResult.OK)
{
txtFilename.Text = openFileDialog.FileName;
using(var stream=File.Open(openFileDialog.FileName, FileMode.Open, FileAccess.Read))
{
using (IExcelDataReader reader = ExcelReaderFactory.CreateReader(stream))
{
DataSet result = reader.AsDataSet(new ExcelDataSetConfiguration()
{
ConfigureDataTable=(_)=>new ExcelDataTableConfiguration() { UseHeaderRow=true }
});
tableCollection = result.Tables;
cboSheet.Items.Clear();
foreach (DataTable table in tableCollection)
cboSheet.Items.Add(table.TableName);
}
}
}
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
}
}
代码在 .NET 框架中创建了一个 GUI,它允许您上传 .xls 或 .xlsx,Excel 文件将显示为 DataGrid 视图。我实现了一个新的文本框( textBox1_TextChanged(object sender, EventArgs e) 方法),并根据用户的输入,我希望它只显示与输入对应的行。我该怎么做?提前致谢!
【问题讨论】:
标签: c# .net excel user-interface