Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 156

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 150 151 152 153 154 155 < 156 > 157 158 159 160 161 162 .. 404 >> Следующая


¦ сошЬоВох по одной. Для добавления каждой считанной строки из файла в комбини-

рованное окно нами используется метод Addo семейства items.

Поскольку пользователю предоставлена возможность вводить новые элементы списка в комбинированное окно, добавим проверку на нажатие клавиши Enter.
330

Глава 13

Если текст, находящийся d свойстве Text управляющего элемента ComboBox, отсутствует в семействе items, то мы добавляем этот новый элемент в семейство:

private void cboOccupacion_KeyDown(object sender-.

System.Windov .Forma.KeyEventArgo e)

(

int index * 0;

ComboBox cbo “ (ComboBox}sender;

// Паи необходимо что-либо hi ддрин <Л' голысо в тон случае,

// если была нажата клавиша Enter if {e.KeyCode =» Krys.Enter)

С

// Метод FindStringExact осуществляет поиск строки и не является // чувствительным к регистру; что нам и требуется, т. к. Programmer // ничем не отличается от programmer. Если удается обнаружить И совпадение, то данный элемент в ComboBox становится выбранным, index = cbo.FindStringExact(cbO.Text)j

if (index < 0) // Метод FindStringExact возвращает значение -1

. //в том случае, если ничего не найдено,

cbo.Items.Add(cbo.Text>( :

else

cbo.Selectedli ex “ index;

П Указывает на то, что событие Key Down нами обработано, е.Handled *= true;

Метод FindStringExact () объекта ComboBox осуществляет поиск строки по полному совпадению двух строк, но без учета регистра в обеих строках. Это нас вполне устраивает, поскольку нам не требуется добавлять в семейство один н тот же вид деятельности, набранный с использованием символов в различных регистрах.

Если не удается найти d семействе items элемент с совпадающим текстом, то добавляется новый элемент. Это автоматически приводит к тому, что он становится выбранным. Если же совпадающий элемент удается обнаружить, то мы просто выбираем уже существующее вхождение в семействе items.

В конструкторе формы нам необходимо подписаться иа события:

this.txtApe.TextChanged += new System.EventHandler(thie.txtBo^_TextChanged); this.cboOccupation:XeyDown += new

System.Windows .Fonts .KeyEventHandler (thie,cboOccupation_KeyDcwn) i

В тот момент, когда пользователь закрывает диалог, необходимо сохранить элементы, находящиеся в комбинированном окне. Для этого предусмотрен еще один метод:

private void SaveOccupationO (

try

С

System.10.StreamWriter sw * new

System. 10.St awmWriter(*../Occtipations.txt') j foreach (string item in this,cboOccupacion.Items)

ew.WriteLine(item); . // Эалиасите элемент в файл

ек.Flush())

sw.CloseO; -

) .

catch (System. Exception e-)

С

MessageBox.Show('File not found or moved')}

>

}
Использование управляющих элементов Windows Form

331

Класс streamwriter будет рассматриваться в главе 20, поэтому данный код в настоящий момент подробно обсуждаться не будет. Еще раз обратите внимание на то, что код, ответственный за выполнение операции ввода/вывода файла, помещен внутрь блока try.. .catch — это мера предосторожности на тот случай, если кто-либо по невнимательности удалил нлн перенес текстовый файл, пока форма была открыта. Просмотр элементов семейства items н запись каждого из них в файл осуществляется в цикле.

Наконец, необходимо выполнить обращение к только что определенным методам LoedOccupation() и SaveOccupationO, Это делается в конструкторе формы и в методе Dispose о соответственно:

public Forml()

this.cboOccupation,KeyDown += new

System.Windows.Forms.KeyEventHandler(this.cboOccupation_KeyDown);

// Заполнение ComboBox LoadOccupations();

)

public override void Dispose!)

(

11 Сохранение элементов a ComboBox SaveOccupation[\ j

base.Dispose(); if (components != null) components.Dispose();

)

На этом пример использования управляющего элемента сотЬовох завершен.

Запустив этот пример, вы должны получить что-то, подобное изображенному на рисунке справа.

Управляющий элемент ListView

- Список, нз которого можно выби-

рать открываемые файлы в стандартных диалоговых окнах, используемых

в Windows, представляет собой управляющий элемент Listview (просмотр списков). Все возможности, связанные со стандартным диалогом просмотра (большие изображения, подробный просмотр и т. д.), обеспечиваются управляющим элементом Listview, поставляемым вместе с Visual Studio.NET (см. рис. слева).

Просмотр списков обычно используется для представления данных, когда пользователям предоставляются определенные возможности по управлению некоторыми особенностями и стилем представления. Можно выводить содержащиеся в управляющем элементе данные в виде столбцов и строк, очень напоминающем матрицу,

¦<’ b#lTVW IttaJM 1*1"
daaoar FaWw W-03*3»02l:t$
CJfcAtoii IW№017:29
L^lDdwflbHd FoUa ow^Hwozttsa
Cl GHOST Fold#* офдаяомии
d«mr FiJtW 2W6-KO022:24
П Programme Fokfcr 31-07-7001 1*31
‘j btcyatc 09*03*2000 21:»
? uWtCDMlklw (H-12-3000 17:59

Ш

A4KUI

г

Ад*.

Oupi

JettA H*inn*f Fed* мл

С

SacnMiv

out-
Предыдущая << 1 .. 150 151 152 153 154 155 < 156 > 157 158 159 160 161 162 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.