internal static Column GetColumnFromType(string columnName, Table table, ColumnType columnType) { Column column; switch (columnType) { case ColumnType.Text: column = new Text(columnName, table); break; case ColumnType.Number: column = new Number(columnName, table); break; case ColumnType.Decimal: column = new Decimal(columnName, table); break; case ColumnType.Checkbox: column = new Checkbox(columnName, table); break; case ColumnType.DateTime: column = new DateTime(columnName, table); break; case ColumnType.Foreignkey: column = new Foreignkey(columnName, table); break; case ColumnType.ManyToMany: column = new ManyToMany(columnName, table); break; case ColumnType.GridColumn: column = new GridColumn(columnName, table); break; case ColumnType.Chart: column = new Chart(columnName, table); break; case ColumnType.File: column = new File(columnName, table) { IsInDataSource = false }; break; case ColumnType.Image: column = new Image(columnName, table) { IsInDataSource = false }; break; case ColumnType.ToolTip: column = new ToolTipColumn(columnName, table) { IsInDataSource = false }; break; case ColumnType.SystemColumn: column = new SystemColumn(columnName, Enums.SystemColumn.Undefined, table) { IsInDataSource = false }; break; default: column = new UnknownColumn(columnName, table); break; } return column; }
public void SystemColumn() { Grid grid = new Grid(); SystemColumn column = new SystemColumn("column", WebGrid.Enums.SystemColumn.SelectColumn, grid.MasterTable); column.Required = true; SystemColumn column2 = new SystemColumn("column2", WebGrid.Enums.SystemColumn.DeleteColumn, grid.MasterTable); SystemColumn column3 = new SystemColumn("column3", WebGrid.Enums.SystemColumn.CopyColumn, grid.MasterTable); SystemColumn column5 = new SystemColumn("column5", WebGrid.Enums.SystemColumn.NewRecordColumn, grid.MasterTable); SystemColumn column6 = new SystemColumn("column6", WebGrid.Enums.SystemColumn.RowColumn, grid.MasterTable); SystemColumn column7 = new SystemColumn("column7", WebGrid.Enums.SystemColumn.DeleteColumn, grid.MasterTable); SystemColumn column8 = new SystemColumn("column8", WebGrid.Enums.SystemColumn.UpdateGridRecordsColumn, grid.MasterTable); grid.MasterTable.Columns.Add(column); grid.MasterTable.Columns.Add(column2); grid.MasterTable.Columns.Add(column3); grid.MasterTable.Columns.Add(column5); grid.MasterTable.Columns.Add(column6); grid.MasterTable.Columns.Add(column7); grid.MasterTable.Columns.Add(column8); SetupGrid(grid); grid.DisplayView = DisplayView.Grid; grid.DataSourceId = "Categories"; grid.ConnectionString = ConnectionAccessOleDb; StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); HtmlTextWriter gridwriter = new HtmlTextWriter(sw); grid.RenderControl(gridwriter); Assert.Greater(grid.MasterTable.Rows.Count, 1); Assert.LessOrEqual(grid.SystemMessage.Count, 1); // 15-day license key message Assert.AreEqual(grid.DisplayView, DisplayView.Grid); }
internal override Column Duplicate() { SystemColumn c = new SystemColumn(ColumnId, SystemColumnType, m_Table) { m_Html = Html, m_SystemColumnType = m_SystemColumnType }; CopyTo(c); return c; }