Control.SelectNextControl(Control, Boolean, Boolean, Boolean, Boolean) Метод

Определение

Активирует следующий элемент управления.

public:
 bool SelectNextControl(System::Windows::Forms::Control ^ ctl, bool forward, bool tabStopOnly, bool nested, bool wrap);
public bool SelectNextControl (System.Windows.Forms.Control ctl, bool forward, bool tabStopOnly, bool nested, bool wrap);
public bool SelectNextControl (System.Windows.Forms.Control? ctl, bool forward, bool tabStopOnly, bool nested, bool wrap);
member this.SelectNextControl : System.Windows.Forms.Control * bool * bool * bool * bool -> bool
Public Function SelectNextControl (ctl As Control, forward As Boolean, tabStopOnly As Boolean, nested As Boolean, wrap As Boolean) As Boolean

Параметры

ctl
Control

Объект Control, с которого следует начать поиск.

forward
Boolean

true для перемещения в прямом направлении последовательности перехода; false для перемещения в обратном направлении.

tabStopOnly
Boolean

Значение true, чтобы игнорировать элементы управления, у которых для свойства TabStop задано значение false; в противном случае — значение false.

nested
Boolean

Значение true, чтобы включить вложенные дочерние элементы (т. е. дочерние элементы дочерних элементов); в противном случае — значение false.

wrap
Boolean

Значение true для продолжения поиска с первого элемента управления в последовательности табуляции после достижения последнего элемента; в противном случае — значение false.

Возвращаемое значение

Значение true, если элемент управления был активирован; в противном случае — значение false.

Примеры

В следующих примерах кода показан SelectNextControl метод, используемый в форме с некоторыми элементами управления. При каждом щелчке формы активируется следующий элемент управления. Свойство ActiveControl получает текущий активный элемент управления в контейнере.

private void Form1_Click(object sender, EventArgs e)
{
    Control ctl;
    ctl = (Control)sender;
    ctl.SelectNextControl(ActiveControl, true, true, true, true);
}
Private Sub Form1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Click
    Dim ctl As Control
    ctl = CType(sender, Control)
    ctl.SelectNextControl(ActiveControl, True, True, True, True)
End Sub

В следующем примере кода показан метод, SelectNextControl используемый в форме, которая содержит Button и некоторые другие элементы управления. При нажатии Buttonна элемент управления активируется следующий после Button . Обратите внимание, что необходимо получить родительский Button элемент управления. Так как Button не является контейнером, вызов SelectNextControl непосредственно в Button не изменит активацию.

private void button1_Click(object sender, EventArgs e)
{
    Control p;
    p = ((Button) sender).Parent;
    p.SelectNextControl(ActiveControl, true, true, true, true);
}
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
    Dim p As Control
    p = CType(sender, Button).Parent
    p.SelectNextControl(ActiveControl, True, True, True, True)
End Sub

Комментарии

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

Элементы управления Windows Forms в следующем списке нельзя выбрать. Элементы управления, производные от элементов управления в списке, также нельзя выбрать.

При изменении фокуса с помощью клавиатуры (TAB, SHIFT+TAB и т. д.), путем вызова Select методов или SelectNextControl при задании ContainerControl.ActiveControl свойства текущей формы события фокуса происходят в следующем порядке:

  1. Enter

  2. GotFocus

  3. Leave

  4. Validating

  5. Validated

  6. LostFocus

CausesValidation Если свойство имеет значение false, Validating события и Validated подавляются.

Применяется к

См. также раздел