Неправильное масштабирование растрового изображения в DataGridView при сбросе сортировки - PullRequest
0 голосов
/ 08 октября 2018

Здравствуйте, у меня возникла (надеюсь, небольшая) проблема с DataGridview и его сортировкой.

Я читаю csv и добавляю их в DGV построчно в том порядке, в котором они появляются в csv.Это всего лишь одна строка и имя файла для растрового изображения.Я добавляю строку в первую ячейку строки и загружаю растровое изображение, которое добавляю во вторую ячейку.Растровые изображения выглядят хорошо.Давайте назовем это «хронологически» отсортированным.

Теперь, что я хотел сделать:

  1. Пользователь может отсортировать их, щелкнув по заголовку столбца
  2. При выполнении правогонажмите контекстное меню, и пользователь может выбрать, чтобы удалить сортировку.Теперь таблица должна выглядеть как раньше («хронологически»)

Сама сортировка с использованием заголовка столбца работает нормально.Теперь я столкнулся с двумя проблемами, либо сортировка не будет удалена, даже когда я перечитал все строки 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;  
}

Это удаляет пользовательскую сортировку, но растровые изображения изменяются и выглядят некрасиво.
Я был бы рад, если бы кто-нибудь дал мне подсказку.

...