DataGridViewColumn.SortMode Property


Gets or sets the sort mode for the column.

 property System::Windows::Forms::DataGridViewColumnSortMode SortMode { System::Windows::Forms::DataGridViewColumnSortMode get(); void set(System::Windows::Forms::DataGridViewColumnSortMode value); };
public System.Windows.Forms.DataGridViewColumnSortMode SortMode { get; set; }
member this.SortMode : System.Windows.Forms.DataGridViewColumnSortMode with get, set
Public Property SortMode As DataGridViewColumnSortMode

Property Value


A DataGridViewColumnSortMode that specifies the criteria used to order the rows based on the cell values in a column.


The value assigned to the property conflicts with SelectionMode.


The following code example demonstrates how to use the SortMode property.

this.dataGridView1.Columns["Priority"].SortMode =
Me.dataGridView1.Columns("Priority").SortMode = _


When a DataGridView control is sorted using a column with a SortMode property value of Automatic, a sorting glyph is automatically displayed in the column header.

Starting in the .NET Framework 4.6, the sorting glyph is resized according to the system DPI settings when the app.config file contains the following entry:

  <add key="EnableWindowsFormsHighDpiAutoResizing" value="true" />  

When the control is sorted using a column with a SortMode property value of Programmatic, you must display the sorting glyph yourself through the SortGlyphDirection property.

The default sort mode of a DataGridViewTextBoxColumn is Automatic. The default sort mode for other column types is NotSortable.

The SortMode value does not prevent you from sorting a column programmatically, although other restrictions may apply. For more information, see the Sort method.

A SortMode property value of NotSortable will not prevent the DataGridView.ColumnHeaderMouseClick event from occurring, but it will prevent the header from changing its appearance when it is clicked.

Applies to

See also