Condividi tramite


Control.SelectNextControl(Control, Boolean, Boolean, Boolean, Boolean) Metodo

Definizione

Attiva il controllo successivo.

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

Parametri

ctl
Control

Oggetto Control in corrispondenza del quale avviare la ricerca.

forward
Boolean

true per spostarsi avanti nell'ordine di tabulazioni; false per spostarsi all'indietro nell'ordine di tabulazioni.

tabStopOnly
Boolean

true per ignorare i controlli con la TabStop proprietà impostata su false; in caso contrario, false.

nested
Boolean

true per includere controlli figlio annidati (figli di controlli figlio); in caso contrario, false.

wrap
Boolean

true per continuare la ricerca dal primo controllo nell'ordine di tabulazione dopo che è stato raggiunto l'ultimo controllo; in caso contrario, false.

Restituisce

true se un controllo è stato attivato; in caso contrario, false.

Esempio

Nell'esempio di codice seguente viene illustrato il SelectNextControl metodo utilizzato in una maschera con alcuni controlli. Ogni volta che si fa clic sul modulo, viene attivato il controllo successivo. La ActiveControl proprietà ottiene il controllo attualmente attivo nel controllo contenitore.

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

Nell'esempio di codice seguente viene illustrato il SelectNextControl metodo utilizzato in una maschera con Button un oggetto e altri controlli. Quando si fa clic su Button, il controllo successivo dopo l'attivazione di Button . Si noti che è necessario ottenere l'elemento padre del Button controllo. Poiché Button non è un contenitore, la chiamata SelectNextControl diretta su Button non modifica l'attivazione.

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

Commenti

Il SelectNextControl metodo attiva il controllo successivo nell'ordine di tabulazioni se il bit di stile del Selectable controllo è impostato su true in ControlStyles, è contenuto in un altro controllo e tutti i relativi controlli padre sono entrambi visibili e abilitati.

I controlli Windows Form nell'elenco seguente non sono selezionabili. Anche i controlli derivati dai controlli nell'elenco non saranno selezionabili.

Quando si modifica lo stato attivo usando la tastiera (TAB, MAIUSC+TAB e così via), chiamando i Select metodi o SelectNextControl impostando la ContainerControl.ActiveControl proprietà sul form corrente, gli eventi di stato attivo si verificano nell'ordine seguente:

  1. Enter

  2. GotFocus

  3. Leave

  4. Validating

  5. Validated

  6. LostFocus

Se la CausesValidation proprietà è impostata su false, gli Validating eventi e Validated vengono eliminati.

Si applica a

Vedi anche