1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление

Datagridview - "висячие строки"

Тема в разделе ".NET - программирование", создана пользователем Valdocco, 5 апр 2010.

  1. Valdocco

    Valdocco Гость

    Репутация:
    0
    Господа, приветствую! Мне требуется сделать "висячие строки" в DataGridView. Тоесть чтобы независимо от сортировки, которую делает пользователь клкнув по заголовку столбца, указанные строки оставались наверху. Свойство Frozen частично соответствует моей задаче, но при сортировке все сбивается.

    Как решить эту проблему?
     
  2. l0nley

    l0nley Гость

    Репутация:
    0
    Вашу проблему можно решить следующим способом:
    Каждая строка (тип DataGridViewRow) имеет property с именем Tag и типом object, которому можно присваивать абсолютно произвольное значение. Допустим мы при загрузке данных в DataGridView в property Tag поместим признак того, что строка "висячая", например булево true.
    Сортировку будем производить перегруженным методом Sort(IComparer), которому подсунем в качестве IComparer экземпляр класса, который implement интерфейс IComparer. Единственное что остается - в коде метода Compare() добиться того, чтобы все строки, у которых установлено property Tag были всегда "наверху", но это уже зависит от конкретных типов сортировки, которые вы применяете.

    Пример класса RowComparer:IComparer можно посмотреть в MSDN
     
  3. Valdocco

    Valdocco Гость

    Репутация:
    0
    У меня элемент DataGridView привязан к DataTable через DataSource. Поэтому метод Sort не работает.
    Как сделать висячие строки в этом случае?
     
Загрузка...

Поделиться этой страницей