Здравствуйте, у меня возникла (надеюсь, небольшая) проблема с DataGridview и его сортировкой.
Я читаю csv и добавляю их в DGV построчно в том порядке, в котором они появляются в csv.Это всего лишь одна строка и имя файла для растрового изображения.Я добавляю строку в первую ячейку строки и загружаю растровое изображение, которое добавляю во вторую ячейку.Растровые изображения выглядят хорошо.Давайте назовем это «хронологически» отсортированным.
Теперь, что я хотел сделать:
- Пользователь может отсортировать их, щелкнув по заголовку столбца
- При выполнении правогонажмите контекстное меню, и пользователь может выбрать, чтобы удалить сортировку.Теперь таблица должна выглядеть как раньше («хронологически»)
Сама сортировка с использованием заголовка столбца работает нормально.Теперь я столкнулся с двумя проблемами, либо сортировка не будет удалена, даже когда я перечитал все строки CSV.Или хронологический порядок применяется повторно, но растровое масштабирование отключено.
Итак, вот что я сделал:
DataTable DT = new DataTable("DT_Results");
DataSet DS = new DataSet("DS_Results");
DS.Tables.Add(DT);
//Adding the dataset to the DataGridView
DGV.AutoGenerateColumns = true;
DGV.DataSource = DS;
DGV.DataMember = "DT_Results";
...
DataRow dr = DT.NewRow();
dr["User"] = UserName;
dr["UserImage"] = UserImage;
DT.Rows.Add(dr)
В контекстном меню есть один элемент, который вызывает
private void ReloadTable(object sender, EventArgs e)
{
DGV.DataSource = DT;
}
Это удаляет пользовательскую сортировку, но растровые изображения изменяются и выглядят некрасиво.
Я был бы рад, если бы кто-нибудь дал мне подсказку.