Подписка на RSS

Сохранение ширины и порядка следования столбцов в DataGridView

Не секрет, что пользователь, проработавший некоторое время с программой, пытается ее настроить «под себя»: поменять цветовую гамму, расположение панелей инструментов, изменить ширину столбцов в сетке DataGridView… На последней возможности остановимся по подробнее.

За разрешение изменять ширину столбца отвечает свойство AllowUserToResizeColumns элемента управление DataGridView, которое по умолчанию установлено в true. Поэтому, если просто поместить компонент DataGridView на форму, пользователь сможет изменять ширину столбцов по своему усмотрению. Однако, если приложение будет закрыто, то все изменения будут потеряны и, при последующем запуске программы, ширина столбцов будет установлена до размеров, заданных программистом во время разработки программы.

Для того, чтобы устранить это досадное «недоразумение» необходимо предусмотреть сохранение ширины столбцов при закрытии приложения и восстановление ее при запуске программы. Раньше для этих целей использовался реестр Windows, теперь же принято «гадить» в профиле пользователя. Хранение параметров приложения в конфигурационном в каталоге с исполняемым файлом плохая идея: есть люди, работающие под учетной записью, не обладающей правами администратора (их немного, но они есть ;), для которых запись в Program Files запрещена (справедливо для файловой системы NTFS).
(далее…)

Чересстрочная подсветка в DataGridView

Когда речь заходит об отображании табличных данных на форме, первое что приходит в голову — это использовать элемент управления DataGridView, обладающий поистине огромными возможностями (см. статью http://www.rsdn.ru/article/dotnet/datagridview20.xml). Но, как говорит Жванецкий, есть нюанс. Дело в том, что при отображении большого числа строк, пользоваться этим контролом несколько неудобно: строки сливаются, глаз то и дело перескакивает на соседнюю строчку. Во многих платных компонентах есть чересстрочная подсветка, суть которой — использование разных цветов фона для соседних строк.

Реализовать такое поведение DataGridView можно двумя способами.

(далее…)

Нюансы докинга

При проектировании пользовательского интерфейса довольно удобно пользоваться свойством Dock, которое определяет способ изменения размеров элемента управления с его родительским элементом управления. Данное свойство определено в классе Control и может принимать одно из значений перечисления DockStyle:

  • None — закрепление отсутствует;
  • Top — элемент управления закрепляется в верхней части содержащего его элемента управления.
  • Bottom — элемент управления закрепляется в нижней части содержащего его элемента управления.
  • Left — элемент управления закрепляется в левой части содержащего его элемента управления.
  • Right — элемент управления закрепляется в правой части содержащего его элемента управления.
  • Fill — элемент управления заполнят собой всю область содержащего его элемента управления.

(далее…)

1 2