Control.Enter Událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Generuje se při vstupu do ovládacího prvku.
public:
event EventHandler ^ Enter;
public event EventHandler Enter;
public event EventHandler? Enter;
member this.Enter : EventHandler
Public Custom Event Enter As EventHandler
Event Type
Příklady
Následující příklad kódu používá Enter událost ke změně barvy popředí a pozadí objektu TextBox za určitých podmínek.
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
Poznámky
Když změníte fokus pomocí klávesnice (TAB, SHIFT+TAB atd.), voláním Select metod nebo SelectNextControl nebo nastavením ContainerControl.ActiveControl vlastnosti na aktuální formulář, události fokusu proběhnou v následujícím pořadí:
Když změníte fokus pomocí myši nebo voláním Focus metody, události fokusu proběhnou v následujícím pořadí:
Pokud je vlastnost nastavená CausesValidation na false
, Validating jsou události a Validated potlačeny.
Poznámka
Události Enter a Leave jsou potlačeny Form třídou . Ekvivalentními událostmi Form ve třídě jsou Activated události a Deactivate . Události Enter a Leave jsou hierarchické a budou kaskádovitě nahoru a dolů nadřazeného řetězce, dokud se nedosáhne příslušného ovládacího prvku. Předpokládejme například, že máte ovládací prvek se Form dvěma GroupBox ovládacími prvky a každý GroupBox ovládací prvek má jeden TextBox ovládací prvek. Při přesunutí kurzoru z jednoho TextBox do druhého Leave je vyvolána událost pro TextBox a GroupBoxa Enter událost je vyvolána pro druhé GroupBox a TextBox.
Upozornění
Nepokoušejte se nastavit fokus z obslužných Enterrutin událostí , LeaveGotFocus, , LostFocus, Validatingnebo Validated . To může způsobit, že aplikace nebo operační systém přestanou reagovat. Další informace najdete WM_KILLFOCUS
v tématu v části "Referenční informace ke vstupu klávesnice" a v části "Zablokování zpráv" tématu O zprávách a frontách zpráv .
Další informace o zpracování událostí najdete v tématu Zpracování a vyvolávání událostí.