如何将excel数据导入gridControl(Dev控件)中,grid中有数据,在原有数据上追加

 我来答
kylie_liu
2012-08-15
知道答主
回答量:7
采纳率:0%
帮助的人:3.6万
展开全部
在 WinForm中打开Excel
托一个 openFileDialog(openFileDialogSource) 和 toolStrip 和ComboBox(ctlPath) 控件

代码:
DataTable dTable;
// 打开
private void buttonOpen_Click(object sender, EventArgs e)
{
if (openFileDialogSource.ShowDialog()==DialogResult.OK)
{
ctlPath.Text = openFileDialogSource.FileName;
ExceltoDataSet(ctlPath.Text);
}
}

//打开方法
public DataTable ExceltoDataSet(string path)
{
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1';";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
System.Data.DataTable schemaTable = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);
string tableName = schemaTable.Rows[0][2].ToString().Trim();

string strExcel = "";
OleDbDataAdapter myCommand = null;
DataSet ds = null;
strExcel = "Select * From [" + tableName + "]";
myCommand = new OleDbDataAdapter(strExcel, strConn);

ds = new DataSet();

myCommand.Fill(ds, tableName);
System.Data.DataTable dt = ds.Tables[0];

dTable = dt;
return dt;

}

//显示数据
private void tsbRefresh_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(ctlPath.Text))
{
ctlPath.Focus();
return;
}
try
{
for (int i = 7; i >= 0; i--)
{
dTable.Rows.Remove(dTable.Rows[i]);

}

gridSource.DataSource = dTable;// gridSource :( DataGridView)
}
catch (Exception)
{

throw;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式