WPF:如何将数据网格的焦点设置为特定行?

Jon*_*len 5 wpf wpftoolkit wpfdatagrid

我想将焦点放在数据网格的第一行.

这是我到目前为止:

Keyboard.Focus(ResultsGrid)
If result.Count > 0 Then
    ResultsGrid.SelectedIndex = 0
End If
Run Code Online (Sandbox Code Playgroud)

这会将焦点设置为datagrid,而不是行本身.

Gui*_*non 13

选择行后,您必须按以下方式将焦点设置在行上:

ResultsGrid.SelectedIndex = index;
DataGridRow row = (DataGridRow)ResultsGrid.ItemContainerGenerator.ContainerFromIndex(index);
row.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));
Run Code Online (Sandbox Code Playgroud)


Tay*_*ese 1

尝试这个:

yourDataGrid.SelectedItem = yourDataGrid.Items[i];
Run Code Online (Sandbox Code Playgroud)