GridColumn.FieldName Property
To bind a column to a data source field, set this property to the required data field name. To create unbound columns, assign a unique identifier to this property. If you obtained a column as a method return value or as an event argument, read the FieldName property value to identify this column.
Namespace: DevExpress.XtraGrid.Columns
Assembly: DevExpress.XtraGrid.v24.2.dll
Declaration
[DefaultValue("")]
[DXCategory("Data")]
[XtraSerializableProperty]
public string FieldName { get; set; }
Property Value
Type | Default | Description |
---|---|---|
String | String.Empty | A String value that specifies the unique column field name. The value is case-sensitive. |
Remarks
The FieldName property does not affect the column caption.
Important
- Assign unique
FieldName
values for unbound columns. Otherwise, the ColumnView.CustomUnboundColumnData event is unable to find required columns. - For data-bound records, it is not recommended to bind multiple columns to the same data field because it limits and/or alters Data Grid functionality: you cannot access a specific column by field name, an update to a single cell value affects all related columns, unexpected behavior when records are sorted, filtered or grouped, etc.
The following sample shows how to obtain a column by its FieldName
and change the column’s appearance. To test this code sample, run the following Demo Center module: Prioritize conditional formatting appearances.
FormatConditionRuleValue lengthRuleCondition = new FormatConditionRuleValue();
lengthRuleCondition.Condition = FormatCondition.GreaterOrEqual;
lengthRuleCondition.Value1 = 25;
lengthRuleCondition.Appearance.BackColor = Color.MediumSeaGreen;
lengthRuleCondition.Appearance.Options.UseBackColor = true;
GridFormatRule lengthRule = new GridFormatRule() { Column = gridView.Columns["Length"], Rule = lengthRuleCondition };
gridView.FormatRules.Add(lengthRule);
gridView.RowCellStyle += (s, e) => {
GridView view = s as GridView;
if (view.IsRowSelected(e.RowHandle) &&
e.Column.FieldName == "Length" &&
lengthRule.IsFit(e.CellValue, view.GetDataSourceRowIndex(e.RowHandle)))
{
AppearanceObject ruleAppearance = (lengthRule.Rule as FormatConditionRuleAppearanceBase).Appearance;
e.Appearance.BackColor = ruleAppearance.BackColor;
}
};
Bind Grid Columns to Nested Properties
You can also bind a column to a nested property. To do this, assign parent and child property names (separated by the dot character - “.”) to the FieldName
property.
Related GitHub Examples
The following code snippets (auto-collected from DevExpress Examples) contain references to the FieldName property.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.