2017-01-01 95 views
0

我有一个gridcontrol(GridControl1) 内THID gridcontrol选择行项目,在两个网格视图(GridView1 & GridView2) 我想选择行项目的价值在GridView2并把它放在一个文本框。 上GridView1我可以得到使用此代码:获得来自gridview2

txtEmpId.Text = GridView1.GetFocusedRowCellDisplayText(colEmp_Id) 

但如果我上GridView2选择任意行,没有什么我会得到。

有没有办法做到这一点。

回答

1

如果您已使用主详细请查看help article describing in detail

在你GridControl你必须处理Grid_MasterRowExpanded,然后把手添加programmaticuly到gridView.SelectionChanged,该代码将帮助您

Private Sub Grid_MasterRowExpanded(ByVal sender As System.Object, ByVal e As DevExpress.XtraGrid.Views.Grid.CustomMasterRowEventArgs) Handles Grid.MasterRowExpanded 
     Dim view As GridView = sender 
     Dim detail As GridView = view.GetDetailView(e.RowHandle, e.RelationIndex) 
     detail.OptionsSelection.MultiSelect = True 

     If e.RowHandle = 0 Or e.RowHandle = 1 Then 
      AddHandler detail.SelectionChanged, AddressOf detail_SelectionChanged 
     End If 

    End Sub 

    Private Sub detail_SelectionChanged(ByVal sender As System.Object, ByVal e As DevExpress.Data.SelectionChangedEventArgs) 

     viewSelected = sender 

     Dim ro As DataRowView = viewSelected.GetFocusedRow 
     txtEmpId.Text = ro.Item("colEmp_Id") 

    End Sub 
+0

同样的问题,文本框仍然是空的。我正在使用主细节。 – Jassimi

+0

好的使用Dim ro As DataRowView = viewSelected.GetFocusedRow; txtEmpId.Text = ro.Item(“colEmp_Id”) –

+0

仍然一样,没有解决。 – Jassimi