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

时间:2010-03-19 22:00:19

标签: wpf wpftoolkit wpfdatagrid

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

这是我到目前为止所做的:

Keyboard.Focus(ResultsGrid)
If result.Count > 0 Then
    ResultsGrid.SelectedIndex = 0
End If

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

2 个答案:

答案 0 :(得分:10)

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

ResultsGrid.SelectedIndex = index;
DataGridRow row = (DataGridRow)ResultsGrid.ItemContainerGenerator.ContainerFromIndex(index);
row.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));

答案 1 :(得分:1)

试试这个:

yourDataGrid.SelectedItem = yourDataGrid.Items[i];