Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Collapse]WinForms Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Build an Application
 [Expand]Controls and Libraries
 [Expand]Common Features
  Get More Help
 [Collapse]API Reference
  [Expand]DevExpress.DataAccess.UI.Design
  [Expand]DevExpress.DataAccess.UI.EntityFramework
  [Expand]DevExpress.DataAccess.UI.Excel
  [Expand]DevExpress.DataAccess.UI.Localization
  [Expand]DevExpress.DataAccess.UI.ObjectBinding
  [Expand]DevExpress.DataAccess.UI.Sql
  [Expand]DevExpress.DataAccess.UI.Wizard
  [Expand]DevExpress.DataAccess.UI.Wizard.Services
  [Expand]DevExpress.DataAccess.UI.Wizard.Views
  [Expand]DevExpress.DocumentView
  [Expand]DevExpress.DocumentView.Controls
  [Expand]DevExpress.LookAndFeel
  [Expand]DevExpress.LookAndFeel.Helpers
  [Expand]DevExpress.Skins
  [Expand]DevExpress.Snap
  [Expand]DevExpress.Snap.API.Native
  [Expand]DevExpress.Snap.Core
  [Expand]DevExpress.Snap.Core.API
  [Expand]DevExpress.Snap.Core.Fields
  [Expand]DevExpress.Snap.Core.Forms
  [Expand]DevExpress.Snap.Core.Options
  [Expand]DevExpress.Snap.Core.Services
  [Expand]DevExpress.Snap.Extensions
  [Expand]DevExpress.Snap.Extensions.Localization
  [Expand]DevExpress.Snap.Localization
  [Expand]DevExpress.Snap.Options
  [Expand]DevExpress.Snap.Services
  [Expand]DevExpress.Utils
  [Expand]DevExpress.Utils.Animation
  [Expand]DevExpress.Utils.Controls
  [Expand]DevExpress.Utils.Drawing
  [Expand]DevExpress.Utils.Menu
  [Expand]DevExpress.Utils.Taskbar
  [Expand]DevExpress.Utils.Taskbar.Core
  [Expand]DevExpress.Utils.UI.Localization
  [Expand]DevExpress.Utils.VisualEffects
  [Expand]DevExpress.Utils.Win
  [Expand]DevExpress.XtraBars
  [Expand]DevExpress.XtraBars.Alerter
  [Expand]DevExpress.XtraBars.Docking
  [Expand]DevExpress.XtraBars.Docking2010
  [Expand]DevExpress.XtraBars.Docking2010.Customization
  [Expand]DevExpress.XtraBars.Docking2010.Views
  [Expand]DevExpress.XtraBars.Docking2010.Views.NativeMdi
  [Expand]DevExpress.XtraBars.Docking2010.Views.Tabbed
  [Expand]DevExpress.XtraBars.Docking2010.Views.Widget
  [Expand]DevExpress.XtraBars.Docking2010.Views.WindowsUI
  [Expand]DevExpress.XtraBars.Localization
  [Expand]DevExpress.XtraBars.Navigation
  [Expand]DevExpress.XtraBars.Ribbon
  [Expand]DevExpress.XtraBars.Ribbon.Gallery
  [Expand]DevExpress.XtraBars.Ribbon.ViewInfo
  [Expand]DevExpress.XtraBars.ToastNotifications
  [Expand]DevExpress.XtraBars.Utils
  [Expand]DevExpress.XtraBars.WinRTLiveTiles
  [Expand]DevExpress.XtraCharts
  [Expand]DevExpress.XtraCharts.Designer
  [Expand]DevExpress.XtraCharts.Wizard
  [Expand]DevExpress.XtraDataLayout
  [Expand]DevExpress.XtraDiagram
  [Expand]DevExpress.XtraDiagram.Options
  [Expand]DevExpress.XtraEditors
  [Expand]DevExpress.XtraEditors.ButtonPanel
  [Expand]DevExpress.XtraEditors.Calendar
  [Expand]DevExpress.XtraEditors.Camera
  [Expand]DevExpress.XtraEditors.Container
  [Expand]DevExpress.XtraEditors.Controls
  [Expand]DevExpress.XtraEditors.CustomEditor
  [Expand]DevExpress.XtraEditors.DXErrorProvider
  [Expand]DevExpress.XtraEditors.Filtering
  [Expand]DevExpress.XtraEditors.Mask
  [Expand]DevExpress.XtraEditors.Persistent
  [Expand]DevExpress.XtraEditors.Repository
  [Expand]DevExpress.XtraEditors.ViewInfo
  [Expand]DevExpress.XtraFilterEditor
  [Expand]DevExpress.XtraGauges.Presets.Styles
  [Expand]DevExpress.XtraGauges.Win
  [Expand]DevExpress.XtraGauges.Win.Base
  [Expand]DevExpress.XtraGauges.Win.Gauges.Circular
  [Expand]DevExpress.XtraGauges.Win.Gauges.Digital
  [Expand]DevExpress.XtraGauges.Win.Gauges.Linear
  [Expand]DevExpress.XtraGauges.Win.Gauges.State
  [Expand]DevExpress.XtraGrid
  [Collapse]DevExpress.XtraGrid.Columns
    AutoFilterCondition Enumeration
   [Expand]ColumnFilterInfo Class
    ColumnFilterType Enumeration
    FilterPopupMode Enumeration
    FixedStyle Enumeration
   [Collapse]GridColumn Class
     GridColumn Members
     GridColumn Constructor
    [Collapse]GridColumn Properties
      AbsoluteIndex Property
      AllowSummaryMenu Property
      AppearanceCell Property
      AppearanceHeader Property
      CanShowInCustomizationForm Property
      Caption Property
      ColumnAnnotationAttributes Property
      ColumnEdit Property
      ColumnEditName Property
      ColumnHandle Property
      ColumnType Property
      CustomizationCaption Property
      CustomizationSearchCaption Property
      DisplayFormat Property
      FieldName Property
      FieldNameSortGroup Property
      FilterInfo Property
      FilterMode Property
      Fixed Property
      GroupFormat Property
      GroupIndex Property
      GroupInterval Property
      Image Property
      ImageAlignment Property
      ImageIndex Property
      Images Property
      IsLoading Property
      IsUnboundExpressionValid Property
      MaxWidth Property
      MinWidth Property
      MRUFilters Property
      Name Property
      OptionsColumn Property
      OptionsEditForm Property
      OptionsFilter Property
      ReadOnly Property
      RealColumnEdit Property
      ShowButtonMode Property
      ShowUnboundExpressionMenu Property
      SortIndex Property
      SortMode Property
      SortOrder Property
      Summary Property
      SummaryItem Property
      SummaryText Property
      Tag Property
      ToolTip Property
      UnboundExpression Property
      UnboundType Property
      View Property
      Visible Property
      VisibleIndex Property
      VisibleWidth Property
      Width Property
    [Expand]GridColumn Methods
   [Expand]GridColumnCollection Class
   [Expand]GridColumnReadOnlyCollection Class
   [Expand]GridColumnSortInfo Class
   [Expand]GridColumnSortInfoCollection Class
   [Expand]GroupSummarySortInfo Class
   [Expand]GroupSummarySortInfoCollection Class
   [Expand]LayoutViewColumn Class
   [Expand]LayoutViewColumnCollection Class
   [Expand]OptionsColumn Class
   [Expand]OptionsColumnEditForm Class
   [Expand]OptionsColumnFilter Class
   [Expand]TileViewColumns Class
  [Expand]DevExpress.XtraGrid.EditForm
  [Expand]DevExpress.XtraGrid.FilterEditor
  [Expand]DevExpress.XtraGrid.Localization
  [Expand]DevExpress.XtraGrid.Views.BandedGrid
  [Expand]DevExpress.XtraGrid.Views.BandedGrid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Base
  [Expand]DevExpress.XtraGrid.Views.Base.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Card
  [Expand]DevExpress.XtraGrid.Views.Card.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Grid
  [Expand]DevExpress.XtraGrid.Views.Grid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Layout
  [Expand]DevExpress.XtraGrid.Views.Layout.Events
  [Expand]DevExpress.XtraGrid.Views.Layout.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Printing
  [Expand]DevExpress.XtraGrid.Views.Tile
  [Expand]DevExpress.XtraGrid.Views.WinExplorer
  [Expand]DevExpress.XtraGrid.WinExplorer
  [Expand]DevExpress.XtraLayout
  [Expand]DevExpress.XtraLayout.Customization
  [Expand]DevExpress.XtraLayout.HitInfo
  [Expand]DevExpress.XtraLayout.Localization
  [Expand]DevExpress.XtraLayout.Utils
  [Expand]DevExpress.XtraMap
  [Expand]DevExpress.XtraMap.Printing
  [Expand]DevExpress.XtraNavBar
  [Expand]DevExpress.XtraNavBar.ViewInfo
  [Expand]DevExpress.XtraPdfViewer
  [Expand]DevExpress.XtraPdfViewer.Commands
  [Expand]DevExpress.XtraPdfViewer.Localization
  [Expand]DevExpress.XtraPivotGrid
  [Expand]DevExpress.XtraPivotGrid.Data
  [Expand]DevExpress.XtraPrinting
  [Expand]DevExpress.XtraPrinting.Control
  [Expand]DevExpress.XtraPrinting.Preview
  [Expand]DevExpress.XtraPrintingLinks
  [Expand]DevExpress.XtraReports.UI
  [Expand]DevExpress.XtraRichEdit
  [Expand]DevExpress.XtraRichEdit.Commands
  [Expand]DevExpress.XtraRichEdit.Export
  [Expand]DevExpress.XtraRichEdit.Import
  [Expand]DevExpress.XtraRichEdit.Localization
  [Expand]DevExpress.XtraRichEdit.Menu
  [Expand]DevExpress.XtraScheduler
  [Expand]DevExpress.XtraScheduler.Drawing
  [Expand]DevExpress.XtraScheduler.Printing
  [Expand]DevExpress.XtraScheduler.Reporting
  [Expand]DevExpress.XtraScheduler.Reporting.UI
  [Expand]DevExpress.XtraScheduler.Services
  [Expand]DevExpress.XtraScheduler.Services.Implementation
  [Expand]DevExpress.XtraScheduler.UI
  [Expand]DevExpress.XtraSpellChecker
  [Expand]DevExpress.XtraSpellChecker.Localization
  [Expand]DevExpress.XtraSplashForm
  [Expand]DevExpress.XtraSplashScreen
  [Expand]DevExpress.XtraSpreadsheet
  [Expand]DevExpress.XtraSpreadsheet.Services
  [Expand]DevExpress.XtraTab
  [Expand]DevExpress.XtraTab.Buttons
  [Expand]DevExpress.XtraTab.ViewInfo
  [Expand]DevExpress.XtraTabbedMdi
  [Expand]DevExpress.XtraToolbox
  [Expand]DevExpress.XtraTreeList
  [Expand]DevExpress.XtraTreeList.Columns
  [Expand]DevExpress.XtraTreeList.Data
  [Expand]DevExpress.XtraTreeList.Localization
  [Expand]DevExpress.XtraTreeList.Menu
  [Expand]DevExpress.XtraTreeList.Nodes
  [Expand]DevExpress.XtraTreeList.Nodes.Operations
  [Expand]DevExpress.XtraTreeList.StyleFormatConditions
  [Expand]DevExpress.XtraTreeMap
  [Expand]DevExpress.XtraVerticalGrid
  [Expand]DevExpress.XtraVerticalGrid.Events
  [Expand]DevExpress.XtraVerticalGrid.Localization
  [Expand]DevExpress.XtraVerticalGrid.Rows
  [Expand]DevExpress.XtraWaitForm
  [Expand]DevExpress.XtraWizard
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

GridColumn.FieldNameSortGroup Property

Gets or sets another field by which data is sorted/grouped/filtered when sorting/grouping/filtering is applied to the current column.

Namespace:DevExpress.XtraGrid.Columns
Assembly:DevExpress.XtraGrid.v17.1.dll

Expanded Syntax

Property value

Type: String
A string that specifies a field name.
The default is String.Empty.

Expanded Remarks

XtraGrid's default sorting, grouping and filtering behavior is as follows. When clicking a column header or changing the SortOrder property, data is sorted by the corresponding field. When grouping against a column, data groups are created based on the values of this column. When opening a column's Filter Dropdowns, this list displays the column's unique values.

The FieldNameSortGroup property allows you to change this behavior. When sorting/grouping is applied to a specific column, you can sort/group data against another field instead. To do this, set the FieldNameSortGroup property to the required field name.

Regarding the grouping functionality, the FieldNameSortGroup property is intended to sort the created data groups by another field. For instance, when grouping against a lookup column, you may want to sort the created data groups against the lookup column's display text, instead of the column's IDs. In regular binding mode, this is the default behavior, which is managed by the SortMode property. In Server Mode, this property is not supported. However, you can sort data groups against the lookup column's display text by setting the FieldNameSortGroup property to the field that provides this column's display values.

When you group by a column whose FieldNameSortGroup property is set to a certain field, the data groups are formed correctly if the following two data groupings produce the same result:
  1. grouping against the current column whose FieldNameSortGroup property is not set.
  2. grouping against the FieldNameSortGroup field

Otherwise, the grouping behavior may produce unpredictable results (e.g., data rows within a group may not match the group row's display text).

When opening a filter dropdown for a column, you can show another field's values in this dropdown. To accomplish this, assign this field's name to the FieldNameSortGroup property and set the OptionsColumnFilter.FilterBySortField option to True.

You can create an unbound column with a specific field name and then assign this field name to the FieldNameSortGroup property. In this instance, data in the current column will be sorted/grouped/filtered using values of the created unbound column.

The ColumnView.CustomColumnSort and GridView.CustomColumnGroup events allow you to implement custom algorithms for data sorting and grouping.

Expanded Example

Show Me

A complete sample project is available in the DevExpress Code Examples database at http://www.devexpress.com/example=E1511.

In the example, the UnitPrice column is sorted. However, for this column the FieldNameSortGroup property is set to "ExtendedPrice". So, data is actually sorted by the ExtendedPrice field when the UnitPrice column is sorted.

The following image shows the result:

Expanded See Also

How would you rate this topic?​​​​​​​