Control.Enter 이벤트

정의

컨트롤이 입력되면 발생합니다.Occurs when the control is entered.

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

이벤트 유형

EventHandler

예제

다음 코드 예제에서는 이벤트를 사용 하 여 Enter 특정 조건에서의 전경색 및 배경색을 변경 합니다 TextBox .The following code example uses the Enter event to change the foreground and background colors of a TextBox under particular conditions.

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

설명

호출 하 여 키보드 (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.

참고

EnterLeave 이벤트는 클래스에 의해 억제 됩니다 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 이벤트는 및에 대해 발생 TextBox GroupBox 하 고 이벤트는 Enter 다른 및에 대해 발생 합니다 GroupBox TextBox .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 LostFocus Validating 또는 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 in the "Keyboard Input Reference" section and the "Message Deadlocks" section of the About Messages and Message Queues topic.

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

적용 대상

추가 정보