gpt4 book ai didi

c# - 如何仅为可见元素引发 OnPropertyChanged?

转载 作者:太空宇宙 更新时间:2023-11-03 14:08:27 25 4
gpt4 key购买 nike

我有非常大的网格。我想使用 CheckBox“选中/取消选中所有”,它将选中/取消选中所有行。但是它非常慢,因为有很多 OnPtopertyChanged 事件的调用。如何仅为可见元素引发 OnPropertyChanged 事件?启用行虚拟化。

最佳答案

20000 行很多:)

如果您断开 ItemsSource 绑定(bind)并更改 View 模型中的列表并将 itemssource 设置为新的选中列表,会发生什么情况?

否则,如果他们想要 20000 行,他们可以等待 ;)

编辑

如果你不改变你的 itemssource 你必须为每个项目提高 propertychanged,否则你看不到变化。

另一种方法是将绑定(bind)设置为 null 或 new List

  this.MyGridItemsViewModelProperty = new List();//"disconnect" the binding to the grid for the all check/uncheck

然后用选中/取消选中更改您的真实列表并将其设置回网格 ItemsSource

   this.MyGridItemsViewModelProperty = myupdatelist;

网格

   <Grid ItemsSource="{Binding MyGridItemsViewModelProperty}" />

但我不知道第二种方法是否更快,你应该测试一下。

关于c# - 如何仅为可见元素引发 OnPropertyChanged?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8601442/

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