public void AddDetailGridViewComponent(ITableDataAdapter tableDataAdapter)
        {
            if (tableDataAdapter is null)
            {
                return;
            }

            var masterDetailRelationship = GridConfiguration.FindRelationshipConfiguration(tableDataAdapter.UnderlyingTypeOfItem);
            var pageSize = RuntimeHelpers.TypeCheck(masterDetailRelationship.DetailGridViewPageSize(TableDataSet));

            RendererTreeBuilder.OpenComponent(typeof(GridViewGeneric <>).MakeGenericType(tableDataAdapter.UnderlyingTypeOfItem));
            RendererTreeBuilder.AddAttribute("DataAdapter", RuntimeHelpers.TypeCheck(tableDataAdapter));
            RendererTreeBuilder.AddAttribute(nameof(ITableDataSet.PageableOptions.PageSize), pageSize);

            RendererTreeBuilder.AddAttribute(
                nameof(ILazyTableDataSet.LazyLoadingOptions),
                new LazyLoadingOptions
            {
                DataUri    = masterDetailRelationship.DetailGridLazyLoadingUrl(),
                PutDataUri = masterDetailRelationship.DetailGridUpdateUrl(),
                DeleteUri  = masterDetailRelationship.DetailGridDeleteUrl()
            });

            AddEventAttributes();
            RendererTreeBuilder.CloseComponent();
        }
 public void AddGridViewComponent(ITableDataAdapter tableDataAdapter)
 {
     RendererTreeBuilder.OpenComponent(typeof(GridViewGroup <>).MakeGenericType(tableDataAdapter.UnderlyingTypeOfItem));
     RendererTreeBuilder.AddAttribute("DataAdapter", tableDataAdapter);
     RendererTreeBuilder.AddAttribute(nameof(ITableDataSet.PageableOptions.PageSize), GridConfiguration.GroupingOptions.GroupPageSize);
     RendererTreeBuilder.CloseComponent();
 }