Как мне реализовать автоматическую сортировку DataGridView?
Я программно добавляю столбцы в DataGridView и затем привязываюсь к списку. По умолчанию SortMode столбцов - автоматический. Но когда я запускаю свое приложение, нажатие на заголовки ничего не делает. Стрелки вверх / вниз не отображаются. Из чтения MSDN мало что сказано об автоматической сортировке. Они более подробно рассказывают о программной сортировке. Итак, я предполагаю, что автоматический путь должен быть легким. MSDN продолжает говорить "Если заголовки столбцов не используются для выборащелчок по заголовку столбца автоматически сортирует DataGridView по этому столбцу и отображает глиф, указывающий порядок сортировки. «Что именно это означает? Могу ли я установить свойство сетки, конфликтующее с сортировкой? Чего мне не хватает?
AutoGenerateColumns = false;
AllowUserToAddRows = false;
AllowUserToDeleteRows = false;
AllowUserToResizeRows = false;
AllowUserToResizeColumns = false;
ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
ReadOnly = true;
MultiSelect = false;
RowHeadersVisible = false;
SelectionMode = DataGridViewSelectionMode.FullRowSelect;
CellBorderStyle = DataGridViewCellBorderStyle.None;
DataGridViewTextBoxColumn idColumn = new DataGridViewTextBoxColumn();
idColumn.HeaderText = "ID";
idColumn.DataPropertyName = "IDNumber";
DataGridViewTextBoxColumn nameColumn = new DataGridViewTextBoxColumn();
nameColumn.HeaderText = "Name";
nameColumn.DataPropertyName = "Description";
DataGridViewTextBoxColumn lastModifiedColumn = new DataGridViewTextBoxColumn();
lastModifiedColumn.HeaderText = "Last Modified";
lastModifiedColumn.DataPropertyName = "Date";
Columns.Add(idColumn);
Columns.Add(nameColumn);
Columns.Add(lastModifiedColumn);
List<IMyObject> bindingList = GetMyList();
DataSource = bindingList;