/ / Зникніть стовпці, коли datagrid.datacontext змінився - c #, wpf, sqlite

Зникають стовпці, коли datagrid.datacontext змінено - c #, wpf, sqlite

У мене є проблеми з переглядом DataGrid (DataGrid - це одна), коли я змінюю її dataContext.

Я витягую інформацію з DBlite DB і вкладаю її в DataTable, тоді я очищаю стовпці DataGrid і розміщую нові дані DataTable у DataGrid, код тут:

sqliteDataAdapter = new SQLiteDataAdapter(query, sqliteConnection);

if (tableFromDB == null)
tableFromDB = new DataTable();

tableFromDB.Reset();

sqliteDataAdapter.Fill(tableFromDB);

dataGrid.Columns.Clear();
dataGrid.DataContext = tableFromDB;

І це працює один раз, коли я вибираю іншу інформацію з БД і повторюю цей код, у мене є дані (я бачу це в DataTable), але число стовпців = 0 (у DataGrid).

Відповіді:

0 для відповіді № 1

Коли я коментую рядок: dataGrid.Columns.Clear (); У мене є виняток ... Але я вирішив свою проблему. Після dataGrid.Columns.Clear (); Я зробив це:

foreach (DataColumn col in tableFromDB.Columns)
{
dataGrid.Columns.Add(
new DataGridTextColumn
{
Header = col.ColumnName,
Binding = new Binding(string.Format("[{0}]", col.ColumnName))
});
}

dataGrid.ItemsSource = tableFromDB.Rows;
dataGrid.Items.Refresh();