0
У меня есть DataGridView, привязанный к DataTable, есть ли способ изменить порядок строк в DataGridView и внести изменения, отраженные в связанной DataTable?переупорядочение строк в databound datagridview
У меня есть DataGridView, привязанный к DataTable, есть ли способ изменить порядок строк в DataGridView и внести изменения, отраженные в связанной DataTable?переупорядочение строк в databound datagridview
Используйте DataView
или BindingSource
между DataTable
и DataGridView
, они оба имеют Sort
свойство:
DataView view = new DataView(table);
view.Sort = "Name ASC, Age Desc";
dataGridView.DataSource = view;
Вы также можете отфильтровать результаты, используя свойство DataView.RowFilter
(или BindingSource.Filter
).
DataGridView
будет автоматически отражать изменения
Что делать, если нет окончательной схемы сортировки? то есть. Я хочу переместить 9-ю строку в 1-ю позицию? – jumpinjackie
Удалите девятую строку из DataTable и вставьте ее в первую позицию –
- или добавьте новый столбец «Заказ» в DataTable и используйте его для сортировки. Независимо от того, что вы делаете, всегда выполняйте сортировку на стороне DataSource, а не в DataGridView, или вы в конечном итоге повеситесь;) –