Элемент TabControl
Элемент TabControl
Элемент управления TabControl очень удобен при создании интерфейсов для устройств с малыми размерами экрана, так как он позволяет создавать многостраничные диалоговые окна. Вкладки, реализуемые этим элементом, имеют ярлычки, на которых отображаются заголовки страниц. И пользователь может легко переключаться между страничками, просто щелкая по этим ярлычкам.
В устройствах Pocket PC вкладки располагаются в нижней части окна. Следует обратить внимание на то, что элемент TabControl всегда располагается в верхнем левом углу контейнера. Например, если поместить TabControl на форму, то он появится в ее верхнем левом углу. Если же нужно изменить расположение этого элемента, то надо поместить его на панель, которая является контейнером. При перемещении панели будет перемещаться и TabControl.
Элемент TabControl следует расположить на форме. У него по умолчанию будут созданы вкладки tabPage1 и tabPage2. Если нужно добавить новую вкладку, то следует щелкнуть на маленькой стрелке в верхней части элемента TabControl и выбрать пункт меню Add Tab (рис. 3.13).
Рис. 3.13. Добавление новой закладки в элементе TabControl
В результате у элемента TabControl появится новая закладка, которую можно настроить в соответствии с потребностями разработчика. Также программист может воспользоваться услугами редактора TabPage Collection Editor для добавления новых закладок. В этом случае надо выбрать элемент TabControl в дизайнере формы, найти свойство TabPages и нажать кнопку редактирования этого свойства. В результате будет открыт редактор закладок. Для управления закладками можно также выделить TabControl, щелкнуть на нем правой кнопкой мыши и выбрать пункты контекстного меню Add Tab или Remove Tab.
Для определения текущей вкладки используется свойство SelectedIndex. При изменении данного свойства инициируется событие SelectedIndexChanged, что иллюстрирует код, приведенный в листинге 3.22.
Листинг 3.22
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) {
switch (this.tabControl1.SelectedIndex) {
case 0:
MessageBox.Show("Вы выбрали первую вкладку");
break;
case 1:
MessageBox.Show("Вы выбрали вторую вкладку");
break;
case 2:
MessageBox.Show("Вы выбрали третью вкладку");
break;
}
}