private static object CreateGridRenderer(IServiceProvider provider) { var gridRowRenderer = new GridRowRenderer() .AddRenderer(new GridCellMasterActionRenderer()) .AddRenderer(new GridCellRenderer(provider.GetRequiredService <EditInputRendererTree>())) .AddRenderer(new GridTabControlRenderer(provider.GetRequiredService <ITableDataAdapterProvider>()), RendererType.AfterTag) .AddRenderer(new GridActionButtonsRenderer(provider.GetRequiredService <FlexGridInterop>())); var gridBodySimpleRenderer = new GridBodySimpleRenderer(provider.GetRequiredService <ILogger <GridBodySimpleRenderer> >()) .AddRenderer(gridRowRenderer); var gridBodyGroupedRenderer = new GridBodyGroupedRenderer( provider.GetRequiredService <ITableDataAdapterProvider>(), provider.GetRequiredService <ILogger <GridBodyGroupedRenderer> >()) .AddRenderer(gridRowRenderer); var gridBodyRenderer = new GridBodyRenderer(gridBodySimpleRenderer, gridBodyGroupedRenderer); var gridRenderer = new GridRenderer(provider.GetRequiredService <ILogger <GridRenderer> >()) .AddRenderer(new GridHeaderRenderer(provider.GetRequiredService <FlexGridInterop>())) .AddRenderer(new GridEmptyItemsRenderer()) .AddRenderer(gridBodyRenderer) .AddRenderer(new GridFooterRenderer(), RendererType.AfterTag) .AddRenderer(new DeleteModalRenderer(provider.GetRequiredService <FlexGridInterop>()), RendererType.AfterTag); return(gridRenderer); }
private static void RegisterGridRendererTree(IServiceCollection services) { services.AddSingleton(typeof(BlazorComponentColumnCollection <>)); services.AddSingleton <GridContextsFactory>(); services.AddSingleton <EditInputRendererTree>(); services.AddSingleton(typeof(IGridRenderer), provider => { var measurableLogger = provider.GetRequiredService <ILogger <GridMesurablePartRenderer> >(); var gridRowRenderer = new GridRowRenderer() .AddRenderer(new GridCellMasterActionRenderer()) .AddRenderer(new GridCellRenderer(provider.GetRequiredService <EditInputRendererTree>())) .AddRenderer(new GridTabControlRenderer(provider.GetRequiredService <ITableDataAdapterProvider>()), RendererType.AfterTag) .AddRenderer(new GridActionButtonsRenderer()); var gridBodyRenderer = new GridBodyRenderer(provider.GetRequiredService <ILogger <GridBodyRenderer> >()) .AddRenderer(gridRowRenderer); var gridRenderer = new GridMesurablePartRenderer( new GridRenderer(provider.GetRequiredService <ILogger <GridRenderer> >()), measurableLogger) .AddRenderer(new GridLoadingRenderer(), RendererType.BeforeTag) .AddRenderer(new GridMesurablePartRenderer(new GridHeaderRenderer(), measurableLogger)) .AddRenderer(new GridMesurablePartRenderer(gridBodyRenderer, measurableLogger)) .AddRenderer(new GridPaginationRenderer(), RendererType.AfterTag); return(gridRenderer); }); }
private static void RegisterGridRendererTree(IServiceCollection services) { services.AddSingleton(typeof(IGridRenderer), provider => { var gridRowRenderer = new GridRowRenderer(); gridRowRenderer.AddRenderer(new GridCellMasterActionRenderer()); gridRowRenderer.AddRenderer(new GridCellRenderer()); gridRowRenderer.AddRenderer(new GridTabControlRenderer(provider.GetRequiredService <ITableDataAdapterProvider>()), RendererType.AfterTag); var gridBodyRenderer = new GridBodyRenderer(provider.GetRequiredService <ILogger <GridBodyRenderer> >()); gridBodyRenderer.AddRenderer(gridRowRenderer); var gridRenderer = new GridRenderer(provider.GetRequiredService <ILogger <GridRenderer> >()); gridRenderer.AddRenderer(new GridMesurablePartRenderer( new GridHeaderRenderer(provider.GetRequiredService <ILogger <GridHeaderRenderer> >()), provider.GetRequiredService <ILogger <GridMesurablePartRenderer> >()) ); gridRenderer.AddRenderer(new GridLoadingRenderer(), RendererType.BeforeTag); gridRenderer.AddRenderer(new GridMesurablePartRenderer(gridBodyRenderer, provider.GetRequiredService <ILogger <GridMesurablePartRenderer> >())); gridRenderer.AddRenderer(new GridPaginationRenderer(), RendererType.AfterTag); return(gridRenderer); }); }
private static void RegisterRendererTreeBuilders(IServiceCollection services) { services.AddSingleton(typeof(CreateItemFormRenderer <>)); services.AddSingleton(typeof(BlazorComponentColumnCollection <>)); services.AddSingleton <GridContextsFactory>(); services.AddSingleton <EditInputRendererTree>(); services.AddSingleton(typeof(IGridRendererTreeBuilder), provider => { var measurableLogger = provider.GetRequiredService <ILogger <GridMesurablePartRenderer> >(); var gridRowRenderer = new GridRowRenderer() .AddRenderer(new GridCellMasterActionRenderer()) .AddRenderer(new GridCellRenderer(provider.GetRequiredService <EditInputRendererTree>())) .AddRenderer(new GridTabControlRenderer(provider.GetRequiredService <ITableDataAdapterProvider>()), RendererType.AfterTag) .AddRenderer(new GridActionButtonsRenderer()); var gridGroupRowRenderer = new GridGroupRowRenderer() .AddRenderer(gridRowRenderer); var gridBodyRenderer = new GridBodyRenderer(provider.GetRequiredService <ILogger <GridBodyRenderer> >()) .AddRenderer(gridRowRenderer) .AddRenderer(gridGroupRowRenderer); var gridRenderer = new GridMesurablePartRenderer( new GridRenderer(provider.GetRequiredService <ILogger <GridRenderer> >()), measurableLogger) .AddRenderer(new GridLoadingRenderer(), RendererType.BeforeTag) .AddRenderer(new GridMesurablePartRenderer(new GridHeaderRenderer(provider.GetRequiredService <FlexGridInterop>()), measurableLogger)) .AddRenderer(new GridMesurablePartRenderer(gridBodyRenderer, measurableLogger)) .AddRenderer(new GridFooterRenderer(), RendererType.AfterTag); return(gridRenderer); }); services.AddSingleton <IFormInputRendererBuilder, TextInputBuilder>(); services.AddSingleton <IFormInputRendererBuilder, NumberInputBuilder>(); services.AddSingleton <IFormInputRendererBuilder, DateInputBuilder>(); services.AddSingleton <IFormInputRendererBuilder, SelectInputBuilder>(); services.AddSingleton <IFormInputRendererTreeProvider, FormInputsRendererTreeProvider>(); }