protected override void OnInit(EventArgs e) { base.OnInit(e); // Create a column for each standard permission foreach (Enum enumeration in Enum.GetValues(typeof(UserPermissionActions))) { LiteralControl script = new LiteralControl() { Text = "return createPermissionColumn(row, '" + enumeration.ToString() + "');" }; DataTableCustomColumn column = new DataTableCustomColumn(); column.Title = enumeration.ToString(); column.Controls.Add(script); column.Width = new Unit(95, UnitType.Pixel); column.Orderable = false; this.PermissionList.Columns.Add(column); } // Create a column for the additional permissions LiteralControl buttonScript = new LiteralControl() { Text = "return createPermissionOption(row);" }; DataTableCustomColumn buttonColumn = new DataTableCustomColumn(); buttonColumn.Controls.Add(buttonScript); buttonColumn.CssClass = "consensus-visible-edit"; buttonColumn.Orderable = false; buttonColumn.Width = new Unit(25, UnitType.Pixel); this.PermissionList.Columns.Add(buttonColumn); }
/// <summary> /// Adds the columns to the grid and defines the data source for restful searching /// </summary> private DataTableColumn InitialiseResult(SearchColumn column) { switch (column.ColumnType) { case "text": DataTableTextColumn textColumn = new DataTableTextColumn(); textColumn.FieldName = column.FieldName; return(textColumn); case "date": DataTableDateColumn dateColumn = new DataTableDateColumn(); dateColumn.FieldName = column.FieldName; return(dateColumn); case "icon": DataTableIconColumn iconColumn = new DataTableIconColumn(); iconColumn.FieldName = column.FieldName; iconColumn.TrueIcon = column.ColumnIconTrueIcon; iconColumn.TrueTooltip = column.ColumnIconTrueText; iconColumn.TrueClass = column.ColumnIconTrueCss; iconColumn.FalseIcon = column.ColumnIconFalseIcon; iconColumn.FalseTooltip = column.ColumnIconFalseText; iconColumn.FalseClass = column.ColumnIconFalseCss; return(iconColumn); case "link": DataTableLinkColumn linkColumn = new DataTableLinkColumn(); linkColumn.LinkText = column.ColumnLinkText; linkColumn.LinkHref = column.ColumnLinkHref; return(linkColumn); case "html": DataTableCustomColumn customColumn = new DataTableCustomColumn(); customColumn.Controls.Add(new LiteralControl() { Text = column.ColumnHtml }); return(customColumn); case "time": DataTableDateTimeColumn datetimeColumn = new DataTableDateTimeColumn(); datetimeColumn.FieldName = column.FieldName; return(datetimeColumn); } return(null); }