C tabcontrol событие смены вкладки

Элемент TabControl позволяет создать элемент управления с несколькими вкладками. И каждая вкладка будет хранить некоторый набор других элементов управления, как кнопки, текстовые поля и др. Каждая вкладка представлена классом TabPage.

Чтобы настроить вкладки элемента TabControl используем свойство TabPages. При переносе элемента TabControl с панели инструментов на форму по умолчанию создаются две вкладки — tabPage1 и tabPage2. Изменим их отображение с помощью свойства TabPages:

Нам откроется окно редактирования/добавления и удаления вкладок:

Каждая вкладка представляет своего рода панель, на которую мы можем добавить другие элементы управления, а также заголовок, с помощью которого мы можем переключаться по вкладкам. Текст заголовка задается с помощью свойства Text.

Управление вкладками в коде

Для добавления новой вкладки нам надо ее создать и добавить в коллекцию tabControl1.TabPages с помощью метода Add:

Удаление так же просто:

Получая в коллекции tabControl1.TabPages нужную вкладку по индексу, мы можем ей легко манипулировать:

SplitContainer

Элемент SplitContainer позволяет создавать две разделенные сплитером панели. Изменяя положение сплитера, можно изменить размеры этих панелей.

Используя свойство Orientation , можно задать горизонтальное или вертикальное отображение сплитера на форму. В данном случае это свойство принимает значения Horisontal и Vertical соответственно.

В случае, когда надо запретить изменение положения сплиттера, то можно присвоить свойству IsSplitterFixed значение true . Таким образом, сплитер окажется фиксированным, и мы не сможем поменять его положение.

По умолчанию при растяжении формы или ее сужении также будет меняться размер обеих панелей сплитконтейнера. Однако мы можем закрепить за одной панелью фиксированную ширину (при вертикальной ориентации сплиттера) или высоту (при горизонтальной ориентации сплиттера). Для этого нам надо установить у элемента SplitContainer свойство FixedPanel . В качестве значения оно принимает панель, которую надо зафиксировать:

Читайте также:  Как подключить ноутбук к наушникам через bluetooth

Чтобы изменить положение сплитера в коде, мы можем управлять свойством SplitterDistance , которое задает положение сплиттера в пикселях от левого или верхнего края элемента SplitContainer. А с помощью свойства SplitterIncrement можно задать шаг, на который будет перемещаться сплиттер при движении его с помощью клавиш-стрелок.

Чтобы скрыть одну из двух панелей, мы можем установить свойство Panel1Collapsed или Panel2Collapsed в true

Определение

Происходит при выборе вкладки. Occurs when a tab is selected.

Примеры

В следующем примере кода показано использование этого элемента. The following code example demonstrates the use of this member. В этом примере обработчик событий сообщает о возникновении Selected события. In the example, an event handler reports on the occurrence of the Selected event. Этот отчет поможет вам узнать, когда происходит событие и может помочь при отладке. This report helps you to learn when the event occurs and can assist you in debugging. Чтобы сообщить о нескольких событиях или о событиях, которые происходят часто, рассмотрите Console.WriteLine возможность замены MessageBox.Show или добавления сообщения в многострочный TextBox. To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

Чтобы выполнить пример кода, вставьте его в проект, содержащий экземпляр типа TabControl с именем. TabControl1 To run the example code, paste it into a project that contains an instance of type TabControl named TabControl1 . Затем убедитесь, что обработчик событий связан с Selected событием. Then ensure that the event handler is associated with the Selected event.

Комментарии

Когда текущая вкладка изменяется в TabControl, следующие события происходят в следующем порядке. When the current tab changes in a TabControl, the following events occur in the following order.

Читайте также:  Gigaset системный пин код

Эти события позволяют выполнять такие задачи, как отмена изменения вкладки, если TabPage она находится в недопустимом состоянии или обновляет состояние вновь отображаемого TabPageобъекта. These events let you perform tasks such as canceling a tab change if a TabPage is in an invalid state or updating the state of a newly displayed TabPage.

Текущая вкладка изменяется, когда пользователь щелкает DeselectTab вкладку, при вызове метода или SelectTab или при SelectedIndex изменении значения свойства или SelectedTab . The current tab changes when the user clicks a tab, when you call the DeselectTab or SelectTab method, or when you change the value of the SelectedIndex or SelectedTab property.

Компонент TabControl представляет собой элемент управления, содержащий несколько элементов, использующих одно рабочее пространство.

Комментарии

Компонент реализован классом TabControl.

Дочерним элементом компонента TabControl является компонент TabItem, представляющий из себя вкладку.

Пример

Компонент может включать в себя несколько вкладок. Новые вкладки добавляются при нажатии на вкладку со знаком «+». Во время добавления новых вкладок наступают события AfterAddItem и BeforeAddItem.

Вкладка открывается при нажатии на заголовок. С открытием и закрытием вкладок связаны события ItemSelected и ItemDeselected.

При помощи свойства TabControl.EnableDelete можно отобразить на вкладках значок , при нажатии на который будет удалена вкладка.

При помощи свойства TabControl.EnableEdit можно сделать редактируемыми заголовки вкладок.

В зависимости от значения свойства DragDropEnabled вкладки могут перетаскиваться при помощи механизма Drag&Drop: