Теперь обработайте событие Click для каждой кнопки. Как вы можете догадаться, нужно просто скрыть или показать Panel (вместе со всеми содержащимися там элементами пользовательского интерфейса).
private void btnShowPanel_Click(object sender, EventArgs e) {
panelTextBoxes.Visible = true;
}
private void btnHidePanel_Click(object sender, EventArgs e) {
panelTextBoxes.Visible = false;
}
Если теперь выполнить программу и щелкнуть на той или другой кнопке в соответствующем окне, вы обнаружите, что содержимое Panel соответственно показывается и скрывается. Конечно, этот пример не производит слишком большого впечатления, но я уверен, что вы смогли увидеть его возможности. Например, вы можете иметь пункт меню или окно безопасности, способные предоставить пользователю "простой" или "сложный" набор элементов. Вместо того чтобы вручную устанавливать свойство Visible равным false (ложь) для множества элементов, вы можете группировать их в пределах Panel и соответственно установить одно свойство Visible.
В рамках Windows Forms предлагается два элемента, функционирующие, как элементы управления с прокруткой (также известные, как элементы управления UpDown). Подобно ComboBox и ListBox, эти новые элементы также позволяют пользователю выбрать элемент из некоторого диапазона возможных элементов.
Разница в том, что при использовании элемента управления DomainUpDown или NumericUpDown варианты выбираются с помощью небольших стрелок, направляющих вверх и вниз. Взгляните, например, на рис. 21.20.
Рис. 21.20. Работа с типами UpDown
С учетом того, что вы уже освоили работу с подобными типами, вы не должны встретить особых сложностей при работе с элементами UpDown. Элемент DomainUpDown дает пользователю возможность сделать выбор из набора строковых данных. Элемент NumericUpDown позволяет выбрать подходящие значений из диапазона числовых данных. Каждый из этих элементов является прямым потомком общего базового класса UpDownBase. В табл. 21.7 описаны некоторые важные свойства этого класса.
Таблица 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 на этой странице.
Читать дальше