繁体   English   中英

WPF DataGrid ItemsSource绑定Linq

[英]WPF DataGrid ItemsSource Binding Linq

这是我的问题。 我有一个WPF数据网格,我将.ItemsSource绑定到linq查询IEnumerable结果。 这非常有效。 当我运行程序时,数据正确地加载到数据网格中。 我的问题是显示的数据太多了。 (IE用户不需要查看ID字段等)。 我试图做的是在绑定到.ItemsSource后,我想隐藏几列。 我找到了.Visibility并试图设置它,但是columns对象是空的。 在绑定之后,我尝试了以下方法:.Items.Refresh()和.UpdateLayout()。

我的问题是在设置.ItemsSource后,我需要调用什么方法来刷新列?

另一种解决方案可能是更改您的linq查询。 只需选择要显示的列,如下所示:

dataGrid.ItemsSource = myquery.Select(x => new { Name = x.Name, Age = x.Age });

为什么不明确设置您的DataGrid? http://www.wpftutorial.net/DataGrid.html - 这将帮助您手动设置DataGrid,而不是让它使用AutoGenerated列。

如果要使用DataGrid列的.Visibility,请在DataGrid中加载数据后执行此操作。 在绑定ItemSource之后,DataGrid没有被加载; 这就是你得到空列对象的原因。

希望这对你有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM