如何在Windows应用程序中将数据集绑定到DataGridView

时间:2012-06-19 11:03:15

标签: c#

我创建了Windows应用程序。在这里,我在数据集中有多个表,现在我想将它绑定到单个DataGridView。有人能帮助我吗?

4 个答案:

答案 0 :(得分:37)

以下将显示一个数据集表

DataGridView1.AutoGenerateColumns = true;
DataGridView1.DataSource = ds; // dataset
DataGridView1.DataMember = "TableName"; // table name you need to show

如果要显示多个表,则需要从所有表中创建一个数据表或自定义对象集合。

如果两个表具有相同的表模式

dtAll = dtOne.Copy(); // dtOne = ds.Tables[0]
dtAll.Merge(dtTwo); // dtTwo = dtOne = ds.Tables[1]

DataGridView1.AutoGenerateColumns = true;
DataGridView1.DataSource = dtAll ; // datatable

示例代码以模式所有表

DataTable dtAll = ds.Tables[0].Copy();
for (var i = 1; i < ds.Tables.Count; i++)
{
     dtAll.Merge(ds.Tables[i]);
}
DataGridView1.AutoGenerateColumns = true;
DataGridView1.DataSource = dtAll ;

答案 1 :(得分:6)

像这样使用: -

gridview1.DataSource = ds.Tables[0]; <-- Use index or your table name which you want to bind
gridview1.DataBind();

我希望它有所帮助!!

答案 2 :(得分:1)

这在 asp.net 中对我有用

dgHistory.DataSource = ds.Tables[0]; // dgHistory is the datagrid
  
dgHistory.DataBind();

答案 3 :(得分:0)

您可以按如下方式将数据集设置为网格:

//假设您的数据集对象是ds

datagridview1.datasource= ds;
datagridview1.datamember= tablename.ToString();

tablename是要在网格上显示的表的名称。

我希望,这有帮助。

B.R。