gpt4 book ai didi

c# - 将 DataGrid 绑定(bind)到 WPF 中的通用列表的最佳方法

转载 作者:太空狗 更新时间:2023-10-29 21:41:57 24 4
gpt4 key购买 nike

我正在尝试绑定(bind) DataGrid到 WPF 中的通用列表。

以下代码会导致列表中每一行数据的空白行(即,如果我有 5 行,它会显示 5 行,但不会在单元格中显示任何数据):

List<DataRow>  DataBindingSource = GuestList.Where(row =>
(row.Field<long>("FK_GROUP_ID") == Int64.Parse(cmbGroup.SelectedValue.ToString())) &&
(row.Field<long>("FK_AGE_GROUP_ID") != (int)L_Age_Group.Child))
.ToList();

gvwAddultDetails.ItemsSource = DataBindingSource;

如果我将对象列表转换为 DataTable ,它有效(显示数据)。例如:

List<DataRow> DataBindingSource = GuestList.Where(row =>
(row.Field<long>("FK_GROUP_ID") == Int64.Parse(cmbGroup.SelectedValue.ToString())) &&
(row.Field<long>("FK_AGE_GROUP_ID") != (int)L_Age_Group.Child))
.ToList();

gvwAdultDetails.ItemsSource = DataBindingSource.CopyToDataTable().DefaultView;

但是如果我有一个 List<DataRow> , 我如何将其转换为 DataTable

绑定(bind) DataGrid 的最佳实践是什么?到 WPF 中的“列表”?

最佳答案

一种绑定(bind)方式 DataGrid到 WPF 中的通用列表:

MainWindow.xaml.cs

Grid.DataContext = DataBindingSource;

MainWindow.xaml

<DataGrid
AutoGenerateColumns="True"
ItemsSource="{Binding}"
Name="Grid" />

但它可能不适用于 DataRow ,因为在 WPF 中,如果你想绑定(bind)到某个东西,它需要是一个属性

- 其他想法 -

以下是将通用列表转换为 DataTable 的方法:

如何绑定(bind)DataGrid到 WPF 中的通用列表:

特别是(WPF 中的一个很棒的功能):

关于c# - 将 DataGrid 绑定(bind)到 WPF 中的通用列表的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4344733/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com