Чтение онлайн

на главную - закладки

Жанры

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Троелсен Эндрю

Шрифт:

Таблица 21.7. Свойства UpDownBase

Свойство Описание
InterceptArrowKeys Читает или устанавливает значение, являющееся индикатором того, что пользователю разрешено использовать стрелки вверх и вниз для выбора значений
ReadOnly Читает или устанавливает значение, являющееся индикатором того, что текст разрешается менять только с помощью стрелок вверх и вниз, но не с помощью ввода в элемент управления с клавиатуры с целью поиска данной строки
Text Читает или устанавливает
текущий текст, отображаемый в элементе управления с прокруткой
TextAlign Читает или устанавливает значение, задающее параметры выравнивания текста в элементе управления с прокруткой
UpDownAlign Читает или устанавливает значение, задающее параметры выравнивания стрелок вверх и вниз в элементе управления с прокруткой, в соответствии со значениями перечня LeftRightAlignment

Элемент управления DomainUpDown добавляет небольшой набор свойств, позволяющих конфигурировать и обрабатывать текстовые данные этого элемента (табл. 21.8).

Таблица 21.8. Свойства DomainUpDown

Свойство Описание
Items Позволяет получить доступ к множеству элементов, хранимых в данном элементе управления
SelectedIndex Возвращает индекс выбранного в настоящий момент элемента (отсчет начинается с нуля, значение -1 указывает отсутствие выбора)
SelectedItem Возвращает выбранный элемент (а не его индекс)
Sorted Индикатор необходимости упорядочения строк по алфавиту
Wrap Индикатор необходимости циклического возвращения к первому или последнему элементу, когда пользователь достигает крайних элементов списка

Элемент NumericUpDown так же прост (табл. 21.9).

Таблица 21.9. Свойства NumericUpDown

Свойство Описание
DecimalPlaces ThousandsSeparator Hexadecimal Используются для указания правил отображения числовых данных
Increment Устанавливает числовое значение приращения для элемента управления при щелчке на стрелке вверх или вниз. Значением по умолчанию для приращения является 1
Minimum Maximum Устанавливают верхнюю и нижнюю границы значений для элемента управления
Value Возвращает текущее значение элемента управления 

Вот та часть InitializeComponent , которая задает конфигурацию NumericUpDown и DomainUpDown на этой странице.

private void InitializeComponent {

 …

 //

 // numericUpDown

 //

 …

 this.numericUpDown.Maximum = new decimal(new int[] {5000, 0, 0, 0});

 this.numericUpDown.Name = "numericUpDown";

 this.numericUpDown.Thousands.Separator = true;

 //

 // domainUpDown

 //

 this.domainUpDown.Items.Add("Второй вариант");

 this.domainUpDown.Items.Add("Последний
вариант");

 this.domainUpDown.Items.Add("Первый вариант");

 this.domainUpDown.Items.Add("Третий вариант");

 this.domainUpDown.Name = "domainUpDown";

 this.domainUpDown.Sorted = true;

 …

}

Обработчик события Click для типа Button этой страницы просто запрашивает у каждого типа его текущее значение и размещает его в рамках подходящего типа Label (с именем lblCurrSel) в виде форматированной строки, как показано ниже.

private void ntnGetSelections_Click(object sender, EventArgs e) {

 // Получение информации от элементов UpDown.…

 lblCurrSel.Text = string.Format("Строка: {0}\nЧисло: {1}", domainUpDown.Text, numericUpDown.Value);

}

Элемент ErrorProvider

В большинстве приложений Windows Forms приходится, так или иначе, проверять правильность пользовательского ввода. Это особенно касается диалоговых окон, поскольку вы должны информировать пользователя о том, что он сделал ошибку, прежде чем пользователь продолжит ввод. Тип ErrorProvider может использоваться для того, чтобы обеспечить пользователю визуальные подсказки в отношении ошибок ввода. Предположим, например, что у вас есть форма, содержащая элементы TextBox и Button. Если пользователь введет в TextBox более пяти символов и TextBox утрачивает фокус ввода, можно отобразить информацию, показанную на рис. 21.21.

Рис. 21.21 Действие ErrorProvider

Здесь вы обнаруживаете, что пользователь ввел более пяти символов, и в ответ размещаете небольшую пиктограмму ошибки (!) рядом с объектом TextBox. Если пользователь подведет указатель мыши к этой пиктограмме, появится "всплывающий" текст с описанием ошибки. Кроме того, этот элемент ErrorProvider сконфигурирован так, чтобы заставить пиктограмму "мигать", что усилит визуальное воздействие (конечно, без запуска приложения вы этого не увидите).

Если вы хотите использовать такой вид проверки ввода, то вам. прежде всего, нужно изучить свойства класса Control, описания которых приводятся в табл. 21.10.

Таблица 21.10. Свойства и события Control

Свойство или событие Описание
CausesValidation Индикатор того, что выбор этого элемента управления вызывает проверку ввода для элементов управления, требующих такой проверки
Validated Событие, генерируемое тогда, когда элемент управления заканчивает выполнение программной логики проверки ввода
Validating Событие, генерируемое тогда, когда элемент управления проверяет пользовательский ввод (например, когда элемент управления утрачивает фокус ввода)

Каждый элемент графического интерфейса может установить для свойства CausesValidation значение true (истина) или false (ложь), причем значением по умолчанию является true. Если вы установите для указанных данных значение true, данный элемент управления при получении им фокуса ввода заставит остальные элемент управления в форме выполнить проверку ввода. При получении фокуса ввода проверяющим элементом управления генерируются события Validating и Validated для каждого элемента управления. В контексте обработчика события Validating вы должны конфигурировать соответствующий ErrorProvider. Также можно, но необязательно, обработать событие Validated, чтобы определить, когда элемент управления закончит цикл проверки.

Поделиться:
Популярные книги

Идеальный мир для Лекаря 8

Сапфир Олег
8. Лекарь
Фантастика:
юмористическое фэнтези
аниме
7.00
рейтинг книги
Идеальный мир для Лекаря 8

Последняя Арена 6

Греков Сергей
6. Последняя Арена
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Последняя Арена 6

По воле короля

Леви Кира
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
По воле короля

Душелов. Том 4

Faded Emory
4. Внутренние демоны
Фантастика:
юмористическая фантастика
ранобэ
фэнтези
фантастика: прочее
хентай
эпическая фантастика
5.00
рейтинг книги
Душелов. Том 4

Темный Лекарь 2

Токсик Саша
2. Темный Лекарь
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Темный Лекарь 2

Эволюция мага

Лисина Александра
2. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Эволюция мага

(Не) моя ДНК

Рымарь Диана
6. Сапфировые истории
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
(Не) моя ДНК

Протокол "Наследник"

Лисина Александра
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Протокол Наследник

Измена. Наследник для дракона

Солт Елена
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Измена. Наследник для дракона

Неудержимый. Книга II

Боярский Андрей
2. Неудержимый
Фантастика:
городское фэнтези
попаданцы
5.00
рейтинг книги
Неудержимый. Книга II

Камень. Книга 4

Минин Станислав
4. Камень
Фантастика:
боевая фантастика
7.77
рейтинг книги
Камень. Книга 4

Измена. Право на сына

Арская Арина
4. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Право на сына

Инквизитор Тьмы 4

Шмаков Алексей Семенович
4. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 4

Кротовский, сколько можно?

Парсиев Дмитрий
5. РОС: Изнанка Империи
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Кротовский, сколько можно?