Kor*_*fin 7 wpf focus mvvm wpfdatagrid
我有一个DataGrid在SelectedItem绑定到一个VM Selected属性.我有一个搜索控制,将做一个查找和SelectedItem的DataGrid变化(和滚动到视图).WPF 4.0和DataGrid SelectionUnit="FullRow".
我的问题在于焦点.的DataGrid(/经由附加属性结合)接收焦点但不能使用Up,Down,Page Up,Page Down键改变行(SelectedItem).如果我再次选中,则显示第一行显示的第一个单元格,它会更改SelectedItem.
底线,我怎么可以给键盘焦点DataGridCell的SelectedItem时候DataGrid获得焦点?
有这么多DataGrid/ Focus问题,已经尝试了一些事情.谢谢你的帮助.
您需要为新选择的行提供逻辑焦点.选择新项目后,尝试用以下方法替换您的SetFocus呼叫:
var selectedRow = (DataGridRow)dataGrid1.ItemContainerGenerator.ContainerFromIndex(dataGrid1.SelectedIndex);
FocusManager.SetIsFocusScope(selectedRow, true);
FocusManager.SetFocusedElement(selectedRow, selectedRow);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9161 次 |
| 最近记录: |