private void CreateColumns(SourceGrid.DataGridColumns columns, DevAge.ComponentModel.IBoundList bindList) { SourceGrid.Cells.Editors.TextBoxNumeric numericEditor = new SourceGrid.Cells.Editors.TextBoxNumeric(typeof(decimal)); numericEditor.TypeConverter = new DevAge.ComponentModel.Converter.NumberTypeConverter(typeof(decimal), "N"); numericEditor.AllowNull = true; //Borders DevAge.Drawing.RectangleBorder border = new DevAge.Drawing.RectangleBorder(new DevAge.Drawing.BorderLine(Color.ForestGreen), new DevAge.Drawing.BorderLine(Color.ForestGreen)); //Standard Views SourceGrid.Cells.Views.Link viewLink = new SourceGrid.Cells.Views.Link(); viewLink.BackColor = Color.DarkSeaGreen; viewLink.Border = border; viewLink.ImageAlignment = DevAge.Drawing.ContentAlignment.MiddleCenter; viewLink.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleCenter; SourceGrid.Cells.Views.Cell viewString = new SourceGrid.Cells.Views.Cell(); viewString.BackColor = Color.DarkSeaGreen; viewString.Border = border; viewString.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleLeft; SourceGrid.Cells.Views.Cell viewNumeric = new SourceGrid.Cells.Views.Cell(); viewNumeric.BackColor = Color.DarkSeaGreen; viewNumeric.Border = border; viewNumeric.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleRight; SourceGrid.Cells.Views.Cell viewImage = new SourceGrid.Cells.Views.Cell(); viewImage.BackColor = Color.DarkSeaGreen; viewImage.Border = border; viewImage.ImageStretch = false; viewImage.ImageAlignment = DevAge.Drawing.ContentAlignment.MiddleCenter; //Create columns SourceGrid.DataGridColumn gridColumn; gridColumn = dataGrid.Columns.Add(null, "", new SourceGrid.Cells.Link()); gridColumn.DataCell.AddController(new LinkClickDelete()); gridColumn.DataCell.View = viewLink; ((SourceGrid.Cells.Link)gridColumn.DataCell).Image = Properties.Resources.trash.ToBitmap(); gridColumn = dataGrid.Columns.Add("Flag", "Flag", new SourceGrid.Cells.DataGrid.Image()); gridColumn.DataCell.View = viewImage; gridColumn = dataGrid.Columns.Add("Country", "Country", typeof(string)); gridColumn.DataCell.View = viewString; gridColumn = dataGrid.Columns.Add("Uniform", "Uniform", new SourceGrid.Cells.DataGrid.Image()); gridColumn.DataCell.View = viewImage; gridColumn = dataGrid.Columns.Add("Capital", "Capital", typeof(string)); gridColumn.DataCell.View = viewString; gridColumn = dataGrid.Columns.Add("Population", "Population", typeof(decimal)); gridColumn.DataCell.Editor = numericEditor; gridColumn.DataCell.View = viewNumeric; gridColumn = dataGrid.Columns.Add("Surface", "Surface", typeof(decimal)); gridColumn.DataCell.Editor = numericEditor; gridColumn.DataCell.View = viewNumeric; gridColumn = dataGrid.Columns.Add("Languages", "Languages", typeof(string)); gridColumn.DataCell.View = viewString; gridColumn = dataGrid.Columns.Add("Currency", "Currency", typeof(string)); gridColumn.DataCell.View = viewString; gridColumn = dataGrid.Columns.Add("Major Cities", "Major Cities", typeof(string)); gridColumn.DataCell.View = viewString; gridColumn = dataGrid.Columns.Add("National Holiday", "National Holiday", typeof(string)); gridColumn.DataCell.View = viewString; gridColumn = dataGrid.Columns.Add("Lowest point", "Lowest point", typeof(string)); gridColumn.DataCell.View = viewString; gridColumn = dataGrid.Columns.Add("Highest point", "Highest point", typeof(string)); gridColumn.DataCell.View = viewString; //Create a conditional view foreach (SourceGrid.DataGridColumn col in columns) { SourceGrid.Conditions.ICondition condition = SourceGrid.Conditions.ConditionBuilder.AlternateView(col.DataCell.View, Color.LightGray, Color.Black); col.Conditions.Add(condition); } }
private void CreateColumns(DevAge.ComponentModel.IBoundList boundList) { //Create the editors SourceGrid.Cells.Editors.TextBoxNumeric numericEditor = new SourceGrid.Cells.Editors.TextBoxNumeric(typeof(decimal)); numericEditor.TypeConverter = new DevAge.ComponentModel.Converter.NumberTypeConverter(typeof(decimal), "N"); numericEditor.AllowNull = true; //the database value can be null (System.DbNull) SourceGrid.Cells.Editors.ComboBox externalIdEditor = new SourceGrid.Cells.Editors.ComboBox(typeof(int)); externalIdEditor.StandardValues = new int[] { 1, 2, 3, 4 }; externalIdEditor.StandardValuesExclusive = true; externalIdEditor.Control.FormattingEnabled = true; DevAge.ComponentModel.Validator.ValueMapping mapping = new DevAge.ComponentModel.Validator.ValueMapping(); mapping.ValueList = new int[] { 1, 2, 3, 4 }; mapping.DisplayStringList = new string[] { "Reference 1", "Reference 2", "Reference 3", "Reference 4" }; mapping.BindValidator(externalIdEditor); //Create the views SourceGrid.Cells.Views.Cell viewSelected = new SourceGrid.Cells.Views.Cell(); viewSelected.Font = new Font(dataGrid.Font, FontStyle.Bold); viewSelected.ForeColor = Color.DarkGreen; //Create selected conditions SourceGrid.Conditions.ConditionView selectedConditionBold = new SourceGrid.Conditions.ConditionView(viewSelected); selectedConditionBold.EvaluateFunction = delegate(SourceGrid.DataGridColumn column, int gridRow, object itemRow) { DataRowView row = (DataRowView)itemRow; return(row["Selected"] is bool && (bool)row["Selected"] == true); }; SourceGrid.Conditions.ConditionCell selectedConditionStar = new SourceGrid.Conditions.ConditionCell(new SourceGrid.Cells.Virtual.CellVirtual()); selectedConditionStar.Cell.Model.AddModel(new SourceGrid.Cells.Models.Image(Properties.Resources.Star.ToBitmap())); selectedConditionStar.EvaluateFunction = delegate(SourceGrid.DataGridColumn column, int gridRow, object itemRow) { DataRowView row = (DataRowView)itemRow; return(row["Selected"] is bool && (bool)row["Selected"] == true); }; //Create columns SourceGrid.DataGridColumn gridColumn; gridColumn = dataGrid.Columns.Add("Selected", "Selected", typeof(bool)); gridColumn = dataGrid.Columns.Add("Country", "Country", typeof(string)); gridColumn.DataCell.Model.AddModel(new BoundImage("Uniform")); gridColumn.Conditions.Add(selectedConditionBold); gridColumn = dataGrid.Columns.Add("Uniform", "Uniform", new SourceGrid.Cells.DataGrid.Image()); gridColumn.Conditions.Add(selectedConditionBold); gridColumn = dataGrid.Columns.Add("Population", "Population", numericEditor); gridColumn.Conditions.Add(selectedConditionBold); gridColumn = dataGrid.Columns.Add("Surface", "Surface", numericEditor); gridColumn.Conditions.Add(selectedConditionBold); gridColumn = dataGrid.Columns.Add("ExternalID", "ExternalID", externalIdEditor); gridColumn.Conditions.Add(selectedConditionBold); gridColumn = dataGrid.Columns.Add("Star", "Star", new SourceGrid.Cells.Virtual.CellVirtual()); gridColumn.DataCell.Model.AddModel(new SourceGrid.Cells.Models.Image(Properties.Resources.StarOff)); gridColumn.Conditions.Add(selectedConditionStar); foreach (SourceGrid.DataGridColumn col in dataGrid.Columns) { col.DataCell.AddController(SourceGrid.Cells.Controllers.ToolTipText.Default); col.DataCell.Model.AddModel(MyToolTipModel.Default); } }