将 WPF 中数据集的查询数据绑定到 datagrid/listview

Databind a query from a dataset in WPF onto a datagrid/listview

我从数据集设计器中的数据集对 table 进行了查询,但我不太确定如何将其数据绑定到 datagrid/listview。

我看到它已添加到 tableadapater(将方法命名为 FillBy)。但我不知道如何将这些查询结果绑定到网格甚至列表视图。

在后面的代码中,我引用了 table 适配器。

public partial class form1: Window
    {
        Dataset1 CDataSet = new Dataset1();
        DataSet1TableAdapters.TBLRECEIPTSTableAdapater tblTabAdapater = new DataSet1TableAdapters.TBLRECEIPTSTableAdapater();
    }



 private void Window_Loaded(object sender, RoutedEventArgs e)
    {
             tblTabAdapater.FillBy(Dataset1.TBLRECEIPTS);
            System.Windows.Data.CollectionViewSource tBLRECEIPTSViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("tBLRECEIPTSViewSource")));
            tBLRECEIPTSViewSource.View.MoveCurrentToFirst();
    }

我有一个数据网格,将其命名为 datagrid1,只是不确定如何用结果填充数据。

假设您的 Dataset1.TBLRECEIPTS 填写正确,并且假设您使用的是 System.Windows.Controls.DataGrid,那么应该这样做:

private void Window_Loaded(object sender, RoutedEventArgs e)
{
 tblTabAdapater.FillBy(Dataset1.TBLRECEIPTS);
 datagrid1.DataContext = Dataset1.TBLRECEIPTS;
}

或者,避免任何 XAML 绑定并在代码隐藏中执行所有操作:

private void DataGrid_Loaded(object sender, RoutedEventArgs e)
{
    tblTabAdapater.FillBy(Dataset1.TBLRECEIPTS);
    datagrid1.ItemsSource = Dataset1.TBLRECEIPTS.AsEnumerable();
}