private void RenderTab( GridRendererContext rendererContext, IMasterTableDataSet masterTableDataSet, ITableDataAdapter selectedDataAdapter, ITableDataAdapter dataAdapter) { var masterDetailRelationship = rendererContext .GridConfiguration .FindRelationshipConfiguration(dataAdapter.UnderlyingTypeOfItem); var localActualItem = rendererContext.ActualItem; rendererContext.OpenElement(HtmlTagNames.Button, selectedDataAdapter.IsForSameUnderlyingType(dataAdapter) ? "tabs-button tabs-button-active" : "tabs-button"); rendererContext.AddOnClickEvent(() => BindMethods.GetEventHandlerValue((UIMouseEventArgs e) => { masterTableDataSet.SelectDataAdapter(new MasterDetailRowArguments(dataAdapter, localActualItem)); rendererContext.RequestRerenderNotification?.Invoke(); }) ); rendererContext.OpenElement(HtmlTagNames.Span, "tabs-button-text"); rendererContext.AddContent(masterDetailRelationship.DetailGridViewPageCaption(dataAdapter)); rendererContext.CloseElement(); rendererContext.CloseElement(); }
private void RenderTabs( GridRendererContext rendererContext, PermissionContext permissionContext, IMasterTableDataSet masterTableDataSet, ITableDataAdapter selectedDataAdapter) { foreach (var dataAdapter in masterTableDataSet.DetailDataAdapters) { RenderTab(rendererContext, masterTableDataSet, selectedDataAdapter, dataAdapter); } if (rendererContext.ShowExplicitDetailTables()) { return; } foreach (var collectionProperty in rendererContext.GridItemCollectionProperties) { if (permissionContext.HasCurrentUserReadPermission(collectionProperty.Name)) { var dataAdapter = tableDataAdapterProvider.CreateCollectionTableDataAdapter(rendererContext.ActualItem, collectionProperty); RenderTab(rendererContext, masterTableDataSet, selectedDataAdapter, dataAdapter); } } }
private void RenderTabs(GridRendererContext rendererContext, IMasterTableDataSet masterTableDataSet, ITableDataAdapter selectedDataAdapter) { foreach (var dataAdapter in masterTableDataSet.DetailDataAdapters) { RenderTab(rendererContext, masterTableDataSet, selectedDataAdapter, dataAdapter); } foreach (var collectionProperty in rendererContext.GridItemCollectionProperties) { var dataAdapter = tableDataAdapterProvider.CreateCollectionTableDataAdapter(rendererContext.ActualItem, collectionProperty); RenderTab(rendererContext, masterTableDataSet, selectedDataAdapter, dataAdapter); } }