我有一个数据网格,它绑定(bind)到我的 View 模型中的一个 Observable 集合。
项目源属性设置为集合。
每次我更新集合(通过另一个按钮)时,我的数据 GridView 都会更新并且我能够看到更改。
我想确保始终选中 WPF 数据网格中的至少一项。
我尝试在 Datagrid XAML 中使 Selected Index =0,但这仅适用于最初加载的数据网格。当 Items 源集合更改时,它不会将所选索引重置为 0。我所说的更改是指整个 Collection 被重置(不是添加或删除单个项目)。
基本上,只要重置 itemssource 集合,我就需要一个从 WPF 触发的事件。
不确定这里的代码是否有用。
最佳答案
您可以在您的 View 模型上订阅 PropertyChanged
事件并查看事件参数以查看属性名称是否与您的 DataGrid
的 的名称相匹配>项目来源
。您还需要确保在您的 View 模型中触发该事件(您可能是因为您的数据网格显示了更改)。
您可以在 View 的后台代码中执行此操作,或者更好的是,在 attached property 中执行此操作.
关于c# - 如何检测 WPF 中 UI 上更改的数据网格项目源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32260201/