我有一个弹出Grid的编辑窗口。 该网格是ComponentOne制作的C1FlexGrid。 (但我认为这可能是与其他网格类似的问题..)
我希望该网格中的第一行获得焦点,并在从主窗口打开该窗口时被选中。
最好是在xaml中,但如果在代码隐藏中不可能或通过继承flexgrid。
我知道如何设置要选择的行和网格以获得焦点但行没有聚焦,因此我无法通过键盘上的向上和向下箭头移动来遍历网格中的行。 / p>
答案 0 :(得分:0)
以编程方式在WPF DataGrid中选择一行,然后以编程方式将焦点放在该单元格上,以便您可以使用键盘上的箭头键浏览DataGrid,选择的部分代码将是:
int index = 1;
dgUsers.SelectedItem = dgUsers.Items[index];
dgUsers.ScrollIntoView(dgUsers.Items[index]);
DataGrid dgrow = (DataGrid)dgUsers.ItemContainerGenerator.ContainerFromItem(dgUsers.Items[index]);
dgrow.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));