防止数据网格中的行更改

Man*_*556 9 c# wpf datagrid selectionchanged

我研究了这个并且很难​​过:我有一个WPF DataGrid,并使用MVVM模型.在某些情况下,我希望阻止更改DataGrid中的行的能力.我研究了这个,并尝试过像这里找到的技术.

在实践中,这是有效的,但是有一个不受欢迎的'闪烁'(它选择点击的行片刻然后回到之前的选择),而这是一个接近的解决方案我希望有一个更优雅的方式,如防止首先是行改变.

我很惊讶没有SelectionChanging或BeforeSelectionChanged所以我可以取消发射的事件; 并强制防止我的视图模型中的索引更改似乎没有任何区别.

我怎样才能做到这一点?

谢谢.

bli*_*eis 6

如果您参加previewkeydownpreviewmousedown活动并e.Handled=true在您的特定情况下打电话会发生什么?

编辑:满足mvvm风格:你可以创建Behavior一个DependencyProperty你可以绑定你的环境.在这种行为中,您可以处理事件以及其他一些事情,例如用户点击数据行或标题...