Лучше поздно, чем никогда, я думаю ...
У меня есть приложение, которое загружает разные таблицы в один и тот же DataGridView с помощью Visual Studio 2013. Пока это работает!
1.DataTable
Вам, безусловно, нужно создать новую таблицу для каждой таблицы, которую вы хотите загрузить, иначе вы не сможете очистить старые данные.Вы можете подумать, что
dataTable.Clear()
поможет, но нет, он оставляет старые заголовки столбцов, поэтому ваша новая таблица загружается справа от всех старых столбцов :-(. Интересно, если ваш новыйУ таблицы есть столбец с тем же именем, что и у старого. Он объединяет их!
2. MySqlAdapter
В настоящее время я создаю новый столбец для каждой таблицы, но на самомПо крайней мере, ваш SQL-запрос меняется, поэтому вам нужно создать новую команду SelectCommand:
MySqlCommand cmd = new MySqlCommand("SELECT * FROM `" + tableName + "`", conn);
sqlAdapter.SelectCommand = cmd;
Я пробовал это, и это похоже на работу, но на самом деле проще просто создать новый MySqlAdapter и производительность действительно неНа данный момент это не проблема!
3. SqlCommandBuilder
Да, вы должны создать новую, потому что команды обновления и удаления будут разными. Я неиспользуйте переменную класса, но создайте ее динамически (т. е. как локальную переменную), когда она мне понадобится.
4. BindingSource
Не думаю, что вам нужна новаяBindingSource, но я не использовалих очень много, поэтому не могу быть уверен.