我的 WPF 应用程序中有一个 DataGrid。对于此 DataGrid,我已将 ItemSource 设置如下
ItemsSource="{Binding Path=MyItems}"
MyItems 是 MyViewModel 中声明的 MyItem 列表
// ItemsSource for MyItem Grid
public List<MyItem> MyItems {get;set; }
MyItem 具有一组属性,每个属性都映射到 DataGrid 中的每一列。在初始化时,我正在填写 MyItems;因此 DataGrid 在每一列中显示 MyItems 值。
在按钮命令中,我正在创建一个工作线程,工作线程修改网格中显示的 MyItems 的属性。例如,MyItem 有一个名为“Status”的属性,它绑定到网格列。状态值在工作线程中更改。我正在调用的工作线程结束
OnPropertyChanged("MyItems"); //force UI refresh
但是网格中的状态列值没有更新。
单击数据网格列后,只有值会刷新。如何从工作线程刷新数据网格?