最近遇到一个问题,在datagrid中选中某行,然后再选择其它行用以触发selectionchanged事件 执行某些判定条件,当不满足某些条件时,不允许选其他行(就是说还要返回当初选择的行),
我的方法是:    _dataGrid.SelectedItem = __e.RemovedItems[0];  _dataGrid.CurrentItem = __e.RemovedItems[0];
但是执行后发现 _dataGrid.SelectedIndex 确实返回到了当初选择的行,但是在DataGrid中表现出来的却没有返回到当初选择的行。
见上图, 其实_dataGrid.SelectedIndex 反映出来已经选中了最后一行,但是界面上却没有表现出来。