wpf datagrid 有没有像 winforms DataGridView 这样的虚拟模式?

Posted

技术标签:

【中文标题】wpf datagrid 有没有像 winforms DataGridView 这样的虚拟模式?【英文标题】:does the wpf datagrid have a virtual mode like the winforms DataGridView? 【发布时间】:2011-10-22 09:02:23 【问题描述】:

winforms DataGridView 有一个虚拟模型,并使用OnCellValueNeeded 方法从用户定义的数据存储中获取单元格值。

我如何在 wpf 中做到这一点? DataGrid 似乎没有 OnCellValueNeeded 方法。

谢谢

【问题讨论】:

【参考方案1】:

不确定这是否对您有所帮助:

DataGrid 使用UI 虚拟化,这意味着在屏幕上可见之前不会创建对象,并且只要它们不可见,就不会调用源对象的相应属性。这也意味着 ui 元素在不再可见后被回收。 这是免费的,您无需进行额外的编码即可使用此功能。如果我正确解释您的问题,主要问题是,如何知道需要业务对象的属性。对于 UI 虚拟化,这是第一次调用属性的时间 - 您可以进行一些延迟初始化。但要注意将过于繁重的初始化代码放入属性中(数据库同步查找等),否则您的 DataGrid 将变得非常缓慢且不方便。

【讨论】:

以上是关于wpf datagrid 有没有像 winforms DataGridView 这样的虚拟模式?的主要内容,如果未能解决你的问题,请参考以下文章

wpf 怎么给datagrid 右键菜单加多个选项?

C#winform datagridivew 中 知道行号 如何获得一行全部数据

wpf datagrid cell 设置焦点

如何用代码选中datagrid中的某一行

wpf中如何获得dataGrid选中行的值

wpf datagrid 默认选择为最新的一行,不知道为啥设置不了