Telerik Hierarchical RadGrid NeedDatasource: как ссылаться на родительский идентификатор?

#asp.net #vb.net #telerik #hierarchy #radgrid

#asp.net #vb.net #telerik #иерархия #radgrid

Вопрос:

У меня есть RadGrid, а внутри RadGrid1.MasterTableView.NestedViewTemplate у меня есть другая RadGrid. Внешняя RadGrid — это RadGrid1, внутренняя RadGrid — это RadGrid2. Обе RadGrid были созданы на основе исходного кода. Я определил отношение, подобное этому:

 RadGrid1.MasterTableView.NestedViewSettings.ParentTableRelation.Add(New Telerik.Web.UI.GridRelationFields() With {.DetailKeyField = "ID", .MasterKeyField = "ID"})
  

Мой вопрос:

У меня есть событие NeedDatasource для внутренней RadGrid, и я хотел бы выполнить фильтрацию по идентификатору идентификатора родительской строки. Как я могу это сделать?

Ответ №1:

Проблема решена. Я добавил обработчик для RadGrid2.NeedDatasource со следующим делегатом:

     Public Sub RadGrid2_NeedDatasource(ByVal source As Object, ByVal e As GridNeedDataSourceEventArgs)
        Dim innerGrid As RadGrid = CType(source, RadGrid)
        Dim nestedItem As GridNestedViewItem = CType(innerGrid.NamingContainer, GridNestedViewItem)
(nesteditem.ParentItem)).GetDataKeyValue("ID")); 
        Dim ShiftID = CType(nestedItem.ParentItem, GridDataItem).GetDataKeyValue("ID")
        '...
    End Sub