Control.Leave Control.Leave Control.Leave Control.Leave Event

정의

입력 포커스가 컨트롤을 벗어나면 발생합니다.Occurs when the input focus leaves the control.

public:
 event EventHandler ^ Leave;
public event EventHandler Leave;
member this.Leave : EventHandler 
Public Custom Event Leave As EventHandler 

예제

다음 코드 예제에서는 Leave 를 이전 상태로 컨트롤을 다시 설정 하는 이벤트입니다.The following code example uses the Leave event to reset a control to its former state.

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 'textBox1_Enter
   
   
    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 'textBox1_Leave
End Class 'Form1 

설명

호출 하 여 키보드 (TAB, SHIFT + TAB 등)를 사용 하 여 포커스를 변경 하면 합니다 Select 또는 SelectNextControl 메서드를 설정 하거나를 ContainerControl.ActiveControl 속성을 현재 폼에 포커스 이벤트가 다음 순서 대로 발생:When you change the focus by using the keyboard (TAB, SHIFT+TAB, and so on), by calling the Select or SelectNextControl methods, or by setting the ContainerControl.ActiveControl property to the current form, focus events occur in the following order:

  1. Enter

  2. GotFocus

  3. Leave

  4. Validating

  5. Validated

  6. LostFocus

마우스를 사용 하 여 또는 호출 하 여 포커스를 변경 하면를 Focus 메서드 포커스 이벤트가 다음 순서 대로 발생 합니다.When you change the focus by using the mouse or by calling the Focus method, focus events occur in the following order:

  1. Enter

  2. GotFocus

  3. LostFocus

  4. Leave

  5. Validating

  6. Validated

경우는 CausesValidation 속성이 falseValidatingValidated 이벤트는 표시 되지 않습니다.If the CausesValidation property is set to false, the Validating and Validated events are suppressed.

참고

합니다 Enter 하 고 Leave 이벤트에 의해 표시 되지를 Form 클래스입니다.The Enter and Leave events are suppressed by the Form class. 이벤트에는 Form 클래스를 ActivatedDeactivate 이벤트입니다.The equivalent events in the Form class are the Activated and Deactivate events. 합니다 EnterLeave 이벤트는 계층적 이며 적절 한 컨트롤에 도달할 때까지 부모 체인 위/아래로 계단식으로 배열 됩니다.The Enter and Leave events are hierarchical and will cascade up and down the parent chain until the appropriate control is reached. 예를 들어 있다고 가정를 Form 두 개의 GroupBox 컨트롤 및 각 GroupBox 컨트롤에 하나 TextBox 제어 합니다.For example, assume you have a Form with two GroupBox controls, and each GroupBox control has one TextBox control. 하나에서 캐럿을 이동할 때 TextBox 다른를 Leave 에 대 한 이벤트가 발생 합니다 TextBoxGroupBox, 및 Enter 다른 이벤트가 발생 GroupBoxTextBox합니다.When the caret is moved from one TextBox to the other, the Leave event is raised for the TextBox and GroupBox, and the Enter event is raised for the other GroupBox and TextBox.

주의

내에서 포커스를 설정 하지 마십시오는 Enter, GotFocus, Leave, LostFocusValidating, 또는 Validated 이벤트 처리기입니다.Do not attempt to set focus from within the Enter, GotFocus, Leave, LostFocus, Validating, or Validated event handlers. 이렇게 하면 응용 프로그램 또는 운영 체제 응답 하지 발생할 수 있습니다.Doing so can cause your application or the operating system to stop responding. 자세한 내용은 참조는 WM_KILLFOCUS 항목입니다.For more information, see the WM_KILLFOCUS topic.

이벤트 처리에 대한 자세한 내용은 이벤트 처리 및 발생 을 참조하십시오.For more information about handling events, see Handling and Raising Events.

적용 대상

추가 정보