在DataF中将DataSet绑定到DataGrid

时间:2013-06-06 14:00:24

标签: c# wpf

我知道这已经好几次了,但是我无法得到这个。 我有一个DataSet和一个DataGrid。我想要做的就是在DataSet中显示DataGrid的内容。

我写了这段代码:

vConn = new OleDbConnection(ConnectionString);
vConn.Open();

vQuery = "Select * from Book";

DataSet vDs = new DataSet();
OleDbDataAdapter vAdap = new OleDbDataAdapter(vQuery, vConn);
vAdap.Fill(vDs,"Book");

GridData.DataContext = vDs.Tables["Book"];
vConn.Close();

但由于某种原因,DataGrid上没有显示数据。我尝试将AutoGenerateColumn设置为True / False。我也试过在xaml中绑定但它没有用。

2 个答案:

答案 0 :(得分:7)

这应该有效:

GridData.ItemsSource = vDs.Tables["Book"].DefaultView;

或者您可以创建自己的DataView

GridData.ItemsSource = new DataView(vDs.Tables["Book"]);

DataTable.DefaultView为您DataView提供了IEnumerable,可以用作ItemsSource

答案 1 :(得分:0)

好的,所以here可能与您正在处理的问题相同。

您可以尝试设置ItemsSource属性,如下所示:

GridData.ItemsSource = vDs.Tables["Book"].AsEnumerable();