|
Программирование >> Автоматически обновляемые приложения
Небольшой комментарий к примеру. Сначала нам необходимо создать контекстное меню с командой Выход и связать его с элементом Notifyicon. Далее мы создаем флаг mCloseOK, с помощью которого можно определить, как происходит закрытие программы. Если пользователь пытается закрыть форму стандартным способом через крестик в заголовке формы, то мы отменяем его операцию и просто сворачиваем форму в область уведомлений. А если пользователь закрывает программу через соответствующую команду контекстного меню, то тогда действительно закрываем приложение. Примечание Пример использования Notifyicon нэходится В пзпке NotifylconDemo на прилагаемом диске. Элемент ListView Как убрать выделение элемента в ListView программно? Если вы хотите снять вьщеление с заданного элемента в многостолбцовом списке (ListView), ТО воспользуйтесь методом clear. В листинге 6.47 выделение снимается со всех элементов. Листинг 6.47. Снятие выделения с элемента Убираем выделение с нужного элемента this.listViewl.Selectedltems.Clear(); Как программно выбрать элемент в ListView? Чтобы выбрать элемент в ListView, установите сначала фокус на ListView и выберите нужный элемент по его индексу (отчет индекса начинается с 0). Пример показан в листинге 6.48. Если вы забудете установить фокус на ListView, ТО никакого выделения элемента не произойдет. выходим из программы по-настоящему m CloseOK = true; this.Close О ; Установим фокус listViewl.Focus(); Выбираем второй элемент listViewl.Items[1].Selected = true; Как сортировать элемент управления ListView по колонкам Данный совет основывается на статье How to sort а ListView control by a column in Visual C# из базы знаний, расположенной по адресу http: support.microsoft.com/kb/319401/EN-US. Когда вы работаете с элементом ListView, может потребоваться отсортировать его содержимое, основываясь на значениях в заданной колонке. Пример подобной функциональности имеется в Проводнике, когда вы видите содержимое папки на жестком диске. В режиме Таблица (Details) Проводник показывает информацию о файлах в этой папке. Например, вы видите имя файла, размер файла, тип файла и дату изменения файла. Когда вы щелкаете на заголовке колонки, список сортируется по возрастанию по признаку этой колонки. При повторном щелчке колонка сортируется по убыванию. В примере, построенном в этой статье, используется класс, унаследованный от интерфейса icomparer. Дополнительно в этом примере используется метод Compare класса caseinsenstiveComparer. Обратите внимание, что этот метод сравнения не учитывает регистр ( Apple считается одинаковым с apple ). Также обратите внимание, что все колонки отсортированы на текстовый манер. Если вы хотите отсортировать по-другому (например, по числам), вы должны заменить следующий код на свой: Замените этот код на свой ObjectCompare.Compare(listviewX.Subltems[ColumnToSort].Text, listviewY.Subltems[ColumnToSort].Text); Создайте новый проект Visual C# и добавьте элемент ListView на форму. Вставьте следующий код в класс формы: private ListViewColumnSorter IvwColumnSorter; Вставьте код, приведенный в листингах 6.49-6.51, в соответствующие места проекта. ..................................,.................................j.,..,........,.................,.., ...............................,....... I Листинг 6.50. Код, добавляемый в обработчик события Load f > . Вставьте следующий код в обработчик события Load формы Используется для создания заголовков ColuranHeader columnheader; Используется для создания элементов в ListView ListViewItem listviewitem; Устанавливаем нужный вид listViewl.View = View.Details; Создаем несколько элементов, содержащих имена и фамилии listviewitem = new ListViewItem( Александр ); listviewitem.Subltems.Add( Суворов ); this.listViewl.Items.Add(listviewitem); listviewitem = new Listviewitem( Наполеон ); listviewitem.Subltems.Add( Бонапарт ); this.listViewl.Items.Add(listviewitem); listviewitem = new Listviewitem( Михаил ); listviewitem.Subltems.Add( Кутузов ); this.listViewl.Items.Add(listviewitem); listviewitem = new Listviewitem( Юлий ); listviewitem.Subltems.Add( Цезарь ); this.listViewl.Items.Add(listviewitem); Создаем колонк columnheader = new ColumnHeader(); columnheader.Text = Имя ; this.listViewl.Columns.Add(columnheader); columnheader = new ColumnHeader(); columnheader.Text = Фамилия ; this.listViewl.Columns.Add(columnheader); Пистинг 6..49. КоДк добавляемый в конст£уктор/формьг-* .-у г- А Вставьте код в конструктор формы после вызова метода InitiaiizeComponent Создаем экземпляр ListViewColumnSorter и связьшаем его с ListView IvwColumnSorter = new ListViewColumnSorter(); this.listViewl.ListViewItemSorter = IvwColumnSorter;
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |