Skip to main content

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.v23.2.dll

NuGet Packages: DevExpress.Win.Grid, DevExpress.Win.Navigation

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.

column.FieldName = "ParentProperty.NestedProperty";

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.

See Also