我通过编写
手动将DataGrid的焦点设置为RowEditEnding
事件处理程序中的一个单元格
cell.Focus();
Keyboard.Focus(cell);
在此之后,我通过调用
测试它是否有效Debug.WriteLine(cell.IsFocused);
Debug.WriteLine(cell.IsKeyboardFocused);
并打印True
和True
,因此根据需要将焦点转移到单元格。
问题是,在此之后,焦点将转移到包含ScrollViewer
或其他容器。
这种行为的原因是什么?我该如何解决这个问题?