当我将DataGrid更改为dataContext时,我在查看它时遇到了一些问题(DataGrid就是其中之一)。
我从sqlite 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;它只工作了一次,当我从DB中选择其他信息并重复此代码时,我有数据(我在DataTable中看到它),但列数=0(在DataGrid中)。
发布于 2012-02-16 15:16:50
当我注释行: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();https://stackoverflow.com/questions/9292287
复制相似问题