我有一个主/细节网格,我在主视图和详细视图上插入。当我处于详细模式时,我需要获取主ID值,但我似乎无法获得该值。
我首先获得inserteditem
中的InsertCommand
:
Dim inserteditem As GridDataInsertItem = DirectCast(e.Item, GridDataInsertItem)
然后我获得父(主)视图的实例:
Dim parenttable As GridTableView = inserteditem.OwnerTableView.ParentItem.OwnerTableView
但是,我似乎无法获得主密钥值。有人知道我应该做什么吗?
答案 0 :(得分:0)
请尝试使用以下代码段。
.ASPX
<MasterTableView CommandItemDisplay="Top" DataKeyNames="ID" Name="parent">
<DetailTables>
<telerik:GridTableView Name="Child" DataKeyNames="Name">
</telerik:GridTableView>
</DetailTables>
<Columns>
........
........
</Columns>
</MasterTableView>
.ASPX.VB
Protected Sub RadGrid1_InsertCommand(sender As Object, e As GridCommandEventArgs)
If e.Item.OwnerTableView.Name = "Child" Then
Dim item As GridDataInsertItem = TryCast(e.Item, GridDataInsertItem)
Dim pitem As GridDataItem = TryCast(item.OwnerTableView.ParentItem, GridDataItem)
' Parent Item DataKey Here
Dim strID As String = pitem.GetDataKeyValue("ID").ToString()
End If
End Sub