键盘专注于DataGrid [英] Keyboard focus to DataGrid
问题描述
如何将焦点和键盘焦点以正确的方式设置到DataGrid?感谢您的帮助。
好的,我找到了一个解决方案。这对我有用
Keyboard.Focus(GetDataGridCell(dataGridFiles.SelectedCells [0]));
private System.Windows.Controls.DataGridCell GetDataGridCell(System.Windows.Controls.DataGridCellInfo cellInfo)
{
var cellContent = cellInfo.Column.GetCellContent(cellInfo.Item);
if(cellContent!= null)
return((System.Windows.Controls.DataGridCell)cellContent.Parent);
return(null);
}
现在,我得到了正确的焦点,可以用键盘导航。 >
I have a WPF DataGrid and want to set the focus to the first item so that the user can navigate with the keyboard in the list of items, when the dialogue is opened the first time. With datagrid.Focus ( ); I can set the focus to the DataGrid, but this is apparently not the keyboard focus, because when I press the arrow down key, I cannot navigate in the DataGrid. The focus jump to the textbox "Description" but that is not what I want (see picture).
How can I set the focus and the keyboard focus in a correct way to the DataGrid? Thank for your help.
Ok, I found a solution. This works for me
Keyboard.Focus (GetDataGridCell (dataGridFiles.SelectedCells[0]));
private System.Windows.Controls.DataGridCell GetDataGridCell (System.Windows.Controls.DataGridCellInfo cellInfo)
{
var cellContent = cellInfo.Column.GetCellContent (cellInfo.Item);
if (cellContent != null)
return ((System.Windows.Controls.DataGridCell) cellContent.Parent);
return (null);
}
Now, I got the right focus and can navigate with keyboard.
这篇关于键盘专注于DataGrid的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!