C# 除了datatable和dataview之外,是否有更高效的(内存足迹方面)绑定到datagrid

C# 除了datatable和dataview之外,是否有更高效的(内存足迹方面)绑定到datagrid,c#,wpf,data-binding,wpfdatagrid,C#,Wpf,Data Binding,Wpfdatagrid,除了datatable和dataview之外,是否有更高效的(内存足迹方面)绑定到datagrid 我有一个绑定到dataview的datagrid,它似乎占用了大量内存。有没有更精简的方法呢?数据表是一个相对较重的对象。它将更改保存在您可以恢复或提交的位置。支持排序和筛选。使用所需的公共属性构建一个轻量级类,并将它们传递给构造函数。然后将这些对象放入列表并绑定到该列表。DataGrid也是如此强大而不轻巧。如果您只需要简单的只读,那么使用GridView ListView。我有一个拥有百万条记

除了datatable和dataview之外,是否有更高效的(内存足迹方面)绑定到datagrid


我有一个绑定到dataview的datagrid,它似乎占用了大量内存。有没有更精简的方法呢?

数据表是一个相对较重的对象。它将更改保存在您可以恢复或提交的位置。支持排序和筛选。使用所需的公共属性构建一个轻量级类,并将它们传递给构造函数。然后将这些对象放入列表并绑定到该列表。DataGrid也是如此强大而不轻巧。如果您只需要简单的只读,那么使用GridView ListView。我有一个拥有百万条记录的应用程序,每次显示40条记录。使用ListView虚拟化,您甚至可以显示1000行。

数据表是一个相对较重的对象。它将更改保存在您可以恢复或提交的位置。支持排序和筛选。使用所需的公共属性构建一个轻量级类,并将它们传递给构造函数。然后将这些对象放入列表并绑定到该列表。DataGrid也是如此强大而不轻巧。如果您只需要简单的只读,那么使用GridView ListView。我有一个拥有百万条记录的应用程序,每次显示40条记录。使用ListView Virtualization,您甚至可以显示1000行。

比列表更好的是ObservableCollection,它将正确地通知GUI控件列表中的更改:

比列表更好的是ObservableCollection,它将正确地通知GUI控件列表中的更改:

请参阅和查看原因你拿走了我的答案?我回答了前面提到的问题。列表比可观察到的集合要轻,这就是问题所在。您可以使用ObservableCollection动态地插入和删除问题中没有的行。您为什么要拿走我的答案?我回答了前面提到的问题。列表比可观察到的集合要轻,这就是问题所在。您可以使用ObservableCollection动态插入和删除不在问题中的行。不,ObservableCollection不会通知UI列表中的更改。ObservableCollection通知UI插入和删除。Via NotifyPropertyChanged on the item是如何将列表或ObservableCollection中的更改通知UI的。问题是封装外形和列表比ObservableCollection轻。不,ObservableCollection不会通知UI列表中的更改。ObservableCollection通知UI插入和删除。Via NotifyPropertyChanged on the item是如何将列表或ObservableCollection中的更改通知UI的。问题是足迹和列表比可观察到的集合要轻。