bryandkko Ответов: 1

C# - несколько таблиц набора данных для нескольких datagridview


Привет,

MySqlConnection conn = new MySqlConnection("SERVER=....");
MySqlDataAdapter ad;
DataSet ds = new DataSet();

ds.Tables.Add("111");
ds.Tables.Add("222");

ad = new MySqlDataAdapter("SELECT * FROM 111", conn);
ad.Fill(ds.Tables["111"]);
datagridview1.DataSource = ds.Tables["111"];

ad = new MySqlDataAdapter("SELECT * FROM 222", conn);
ad.Fill(ds.Tables["222"]);
datagridview2.DataSource = ds.Tables["222"];


'datagridview2' показывает таблицу["111"] вместо таблицы["222"].
Что я упускаю или делаю неправильно?

Что я уже пробовал:

Он работает с
DataTable dt1, dt2;
MySqlDataAdapter ad1, ad2;


Но я не понимаю
datagridview2.DataSource = ds.Tables["222"];

показывает таблицу["111"].

Заранее спасибо.

1 Ответов

Рейтинг:
8

Er. Puneet Goel

Используйте приведенный ниже код. Причина в том, что мы добавляем использование

ds.Tables.Add("111");

он не может добавить таблицу ot ds при индексе 0 и 1.

DataTable dt1 = new DataTable();
DataTable dt2 = new DataTable();
MySqlConnection conn = new MySqlConnection("SERVER=....");
MySqlDataAdapter ad;
DataSet ds = new DataSet();

ad = new MySqlDataAdapter("SELECT * FROM 111", conn);
ad.Fill(dt1);


ad = new MySqlDataAdapter("SELECT * FROM 222", conn);
ad.Fill(dt2);

ds.Tables.Add(dt1);
ds.Tables.Add(dt2);

datagridview1.DataSource = ds.Tables[0];
datagridview2.DataSource = ds.Tables[1];