2012-06-08 55 views
3

我有一个编辑窗口弹出一个网格。 此网格是由ComponentOne制作的C1FlexGrid。 (但我认为这可能是与其他网格类似的问题..)如何设置焦点在WPF中的网格中的一行

我想在网格中的第一行获得焦点,并从主窗口打开该窗口时被选中。

最好在xaml中,但是如果这在代码隐藏或通过继承flexgrid是不可能的。

我知道如何设置一个被选中的行和网格来获得焦点,但该行没有被聚焦,所以我不能通过使用键盘上的向上和向下箭头来移动网格中的行。

回答

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));