Control.OnLeave(EventArgs) Method

Definition

Raises the Leave event.

C#
protected virtual void OnLeave(EventArgs e);
C#
protected internal virtual void OnLeave(EventArgs e);

Parameters

e
EventArgs

An EventArgs that contains the event data.

Examples

The following code example uses the Leave event to reset a control to its former state.

C#
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);
}

Remarks

Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.

The OnLeave method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.

Notes to Inheritors

When overriding OnLeave(EventArgs) in a derived class, be sure to call the base class's OnLeave(EventArgs) method so that registered delegates receive the event.

Applies to

Product Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

See also