Как привязать Dataset к DataGridView в приложении Windows

Я создал приложение Windows. В этом случае у меня есть несколько таблиц в наборе данных, теперь я хочу привязать их к одному DataGridView. Кто-нибудь может мне помочь?

Ответ 1

Далее будет показана одна таблица данных

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 ;

Ответ 2

используйте вот так: -

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

Надеюсь, это поможет!

Ответ 3

вы можете установить набор данных в сетку следующим образом:

//если ваш объект набора данных ds

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

tablename - это имя таблицы, которую вы хотите показать в сетке.

Надеюсь, это поможет.

B.R.