2012-06-08 89 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));