在WPF中将数据集绑定到DataGrid

本文关键字:绑定 DataGrid 数据集 WPF | 更新日期: 2023-09-27 18:17:18

我知道这个问题之前已经问过几次了,但是我不能得到这个。我有一个DataSet和一个DataGrid。我所要做的就是在DataGrid中显示DataSet的内容。

我写了这样的代码:

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上。我试过将autogeneratecoluml设置为True/False。我也尝试在xaml中绑定,但它没有工作。

在WPF中将数据集绑定到DataGrid

应该可以:

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

或者您可以创建自己的DataView:

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

DataTable.DefaultView给出了DataView,它实现了IEnumerable,可以用作ItemsSource

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

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

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