Программирование >>  Автоматически обновляемые приложения 

1 ... 57 58 59 [ 60 ] 61 62 63 ... 170


Небольшой комментарий к примеру. Сначала нам необходимо создать контекстное меню с командой Выход и связать его с элементом 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;



1 ... 57 58 59 [ 60 ] 61 62 63 ... 170

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика