Esempio n. 1
0
        protected override void BuildRendererTreeInternal(GridRendererContext rendererContext, PermissionContext permissionContext)
        {
            var canRenderCreateItemButton = rendererContext.CreateItemIsAllowed() && permissionContext.HasCreateItemPermission;

            rendererContext.OpenElement(HtmlTagNames.TableHead, rendererContext.CssClasses.TableHeader);
            rendererContext.OpenElement(HtmlTagNames.TableRow, rendererContext.CssClasses.TableHeaderRow);

            if (rendererContext.GridConfiguration.IsMasterTable)
            {
                RenderEmptyColumnHeader(rendererContext);
            }

            foreach (var property in rendererContext.GridItemProperties)
            {
                rendererContext.ActualColumnName = property.Name;
                RenderColumnHeader(rendererContext, property);
            }

            if (canRenderCreateItemButton)
            {
                BuildCreateItemButtonRendererTree(rendererContext, permissionContext);
            }

            if (rendererContext.InlineEditItemIsAllowed() && !canRenderCreateItemButton)
            {
                RenderEmptyColumnHeader(rendererContext);
            }

            rendererContext.CloseElement();
            rendererContext.CloseElement();
        }