/// <summary> /// Formata a coluna de acordo com o tipo especificado. /// </summary> /// <param name="pCollumn">A coluna do GridView.</param> /// <param name="pDataType">Tipo da coluna.</param> private static void CreateColumn(DataGridTreeView pTreeGridView, TableAdapterFieldCollection pTableColumns, params KeyValuePair <string, Dictionary <object, string> >[] pColumns) { foreach (TableAdapterField field in pTableColumns) { var columnList = (from p in pColumns where p.Key.Equals(field.Name) select new { Key = p.Key, Value = p.Value }).FirstOrDefault(); var hasCustomColumn = (columnList != null); var column = pTreeGridView.Columns.AddField(field.Name); column.Caption = field.Description; column.VisibleIndex = pTreeGridView.Columns.Count; if (hasCustomColumn) { var comboEdit = new TreeGridValidValuesColumn(column); foreach (var item in columnList.Value) { comboEdit.ValidValues.Add(item.Key, item.Value); } } else { FormatColumn(pTreeGridView.Columns[field.Name], field.GetDbType()); } } }
private void FormatGrid() { var tableAdapterFields = _tableAdapter.GetLogFields(); var pTableColumns = new TableAdapterFieldCollection(); foreach (var field in tableAdapterFields) { pTableColumns.Add(field); } logView.FormatGrid(pTableColumns); logView.OptionsSelection.MultiSelect = true; SetColumnsNoEditable(logView); }
/// <summary> /// Pega a lista de colunas que devem ser adicionada /// </summary> /// <param name="pTable">Uma lista de campos</param> /// <returns>Um strng com os comandos para adiciona as colunas</returns> private string GetAddColumns(TableAdapterFieldCollection pTable) { //[,] {Nome do Campo} {Tipo} var mySp = new StringBuilder(); foreach (var item in pTable) { mySp.AppendFormat("{0} {1} {2}", mySp.Length > 0 ? "," : "", GetFieldName(string.Empty, item.Name, string.Empty), GetCreateFieldType(item.DbType, item.Size, item.Precision, item.Scale)); } mySp.Insert(0, " ADD "); return(mySp.ToString()); }
private void SetCollumns() { if (VisbleColumns.Count == 0) { ViewResult.FormatGrid(Query.Fields, ColumnsParameters); } else { var columns = Query.Fields.Where(p => VisbleColumns.Any(v => v == p.Name)); var col = new TableAdapterFieldCollection(); col.AddRange(columns); ViewResult.FormatGrid(col); } ViewResult.FocusedColumn = SearchColumns.IsEmpty() ? ViewResult.Columns[0] : ViewResult.Columns[SearchColumns.First().Name]; ViewResult.SetColors(); ViewResult.FormatConditions.Clear(); foreach (var item in Conditions) { var col = ViewResult.Columns[item.ColumnName]; if (col == null) { continue; } var scon = new DevExpress.XtraGrid.StyleFormatCondition( item.FormatConditionEnum, col, null, item.val1, item.val2, item.applyToRow); scon.Appearance.BackColor = item.BackColor; scon.Appearance.ForeColor = item.ForeColor; ViewResult.FormatConditions.Add(scon); } }
/// <summary> /// Formata a coluna de acordo com o tipo especificado. /// </summary> /// <param name="pGridView">Grid</param> /// <param name="pTableColumns">A coluna do GridView.</param> /// <param name="pColumns">Columnas com lista suspensa.</param> private static void CreateColumn(GridView pGridView, TableAdapterFieldCollection pTableColumns, params KeyValuePair <string, Dictionary <object, string> >[] pColumns) { foreach (TableAdapterField field in pTableColumns) { var columnList = (from p in pColumns where p.Key.Equals(field.Name) select new { p.Key, p.Value }).FirstOrDefault(); var hasCustomColumn = (columnList != null); if (hasCustomColumn) { var column = new GridValidValuesColumn(); column.Name = field.Name; column.Caption = field.Description; column.OptionsColumn.AllowEdit = false; column.FieldName = field.Name; column.ColumnEdit.NullText = String.Empty; pGridView.Columns.Add(column); column.Visible = true; foreach (var item in columnList.Value) { column.ValidValues.Add(item.Key, item.Value); } } else { pGridView.Columns.AddVisible(field.Name, field.Description); pGridView.Columns[field.Name].OptionsColumn.AllowEdit = false; FormatColumn(pGridView.Columns[field.Name], field.GetDbType(), field.Size); } } }
/// <summary> /// /// </summary> public FormChooseFromList() { InitializeComponent(); Collumns = new TableAdapterFieldCollection(); }
/// <summary> /// Formata as colunas do grid de acordo com a lista de colunas passdas com parametors /// </summary> /// <param name="pGridView">O controle GridView.</param> /// <param name="pTableColumns">Lista de Coluns da Tabela</param> /// <param name="pColumns">Lista de Coluns</param> public static void FormatGrid(this DataGridTreeView pGridView, TableAdapterFieldCollection pTableColumns, params KeyValuePair <string, Dictionary <object, string> >[] pColumns) { TreeGridViewExtention.CreateColumn(pGridView, pTableColumns, pColumns); }