Control.Leave Evento
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Si verifica quando lo stato attivo per l'input esce dall'area del controllo.
public:
event EventHandler ^ Leave;
public event EventHandler Leave;
public event EventHandler? Leave;
member this.Leave : EventHandler
Public Custom Event Leave As EventHandler
Tipo evento
Esempio
Nell'esempio di codice seguente viene usato l'evento Leave per reimpostare un controllo sullo stato precedente.
private:
void textBox1_Enter( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
// If the TextBox contains text, change its foreground and background colors.
if ( textBox1->Text != String::Empty )
{
textBox1->ForeColor = Color::Red;
textBox1->BackColor = Color::Black;
// Move the selection pointer to the end of the text of the control.
textBox1->Select(textBox1->Text->Length,0);
}
}
void textBox1_Leave( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
// Reset the colors and selection of the TextBox after focus is lost.
textBox1->ForeColor = Color::Black;
textBox1->BackColor = Color::White;
textBox1->Select(0,0);
}
private void textBox1_Enter(object sender, System.EventArgs e)
{
// If the TextBox contains text, change its foreground and background colors.
if (!string.IsNullOrEmpty(textBox1.Text))
{
textBox1.ForeColor = Color.Red;
textBox1.BackColor = Color.Black;
// Move the selection pointer to the end of the text of the control.
textBox1.Select(textBox1.Text.Length, 0);
}
}
private void textBox1_Leave(object sender, System.EventArgs e)
{
// Reset the colors and selection of the TextBox after focus is lost.
textBox1.ForeColor = Color.Black;
textBox1.BackColor = Color.White;
textBox1.Select(0,0);
}
Private Sub textBox1_Enter(sender As Object, e As System.EventArgs) Handles textBox1.Enter
' If the TextBox contains text, change its foreground and background colors.
If textBox1.Text <> [String].Empty Then
textBox1.ForeColor = Color.Red
textBox1.BackColor = Color.Black
' Move the selection pointer to the end of the text of the control.
textBox1.Select(textBox1.Text.Length, 0)
End If
End Sub
Private Sub textBox1_Leave(sender As Object, e As System.EventArgs) Handles textBox1.Leave
' Reset the colors and selection of the TextBox after focus is lost.
textBox1.ForeColor = Color.Black
textBox1.BackColor = Color.White
textBox1.Select(0, 0)
End Sub
End Class
Commenti
Quando si modifica lo stato attivo usando la tastiera (TAB, MAIUSC+TAB e così via), chiamando i Select metodi o SelectNextControl o impostando la ContainerControl.ActiveControl proprietà sulla maschera corrente, gli eventi di stato attivo si verificano nell'ordine seguente:
Quando si modifica lo stato attivo usando il mouse o chiamando il Focus metodo , gli eventi di stato attivo si verificano nell'ordine seguente:
Se la CausesValidation proprietà è impostata su false
, gli Validating eventi e Validated vengono eliminati.
Nota
Gli Enter eventi e Leave vengono eliminati dalla Form classe . Gli eventi equivalenti nella Form classe sono gli Activated eventi e Deactivate . Gli Enter eventi e Leave sono gerarchici e si propagano verso l'alto e verso il basso la catena padre fino a quando non viene raggiunto il controllo appropriato. Si supponga, ad esempio, di avere un Form oggetto con due GroupBox controlli e che ogni GroupBox controllo abbia un TextBox controllo. Quando il cursore viene spostato da uno TextBox all'altro, l'evento Leave viene generato per TextBox e GroupBoxe viene generato l'evento Enter per l'altro GroupBox e TextBox.
Attenzione
Non tentare di impostare lo stato attivo dai Entergestori eventi , , GotFocusLostFocusLeave, Validating, o .Validated In questo modo l'applicazione o il sistema operativo smette di rispondere. Per altre informazioni, vedere l'argomento WM_KILLFOCUS .
Per ulteriori informazioni sulla gestione degli eventi, consultare gestione e generazione di eventi.