Control.Leave イベント

定義

入力フォーカスがコントロールを離れると発生します。

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

イベントの種類

EventHandler

次のコード例では、イベントを使用して、 Leave コントロールを元の状態にリセットします。

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

  1. Enter

  2. GotFocus

  3. Leave

  4. Validating

  5. Validated

  6. LostFocus

マウスを使用するか、 メソッドを呼び出してフォーカスを変更すると、フォーカス イベントは次 Focus の順序で発生します。

  1. Enter

  2. GotFocus

  3. LostFocus

  4. Leave

  5. Validating

  6. Validated

プロパティが CausesValidation に設定されている場合 false 、 イベントと Validating Validated イベントは抑制されます。

注意

イベント EnterLeave イベントは、 クラスによって抑制 Form されます。 クラスの同等のイベント Form は、 イベント ActivatedDeactivate イベントです。 イベント Enter と イベントは階層構造であり、適切なコントロールに到達するまで親チェーンの Leave 上下にカスケードされます。 たとえば、コントロールが 2 つで、各コントロールに 1 つの Form GroupBox GroupBox コントロールがあると TextBox します。 キャレットを一方から別のキャレットに移動すると、 と に対して イベントが発生し、もう一方の と に対して TextBox Leave TextBox GroupBox Enter イベントが発生 GroupBox します TextBox

注意事項

、、、、、または イベント ハンドラー内からフォーカス Enter GotFocus Leave LostFocus ValidatingValidated 設定しようとはしない。 そうすると、アプリケーションまたはオペレーティング システムが応答を停止する可能性があります。 詳細については、 WM_KILLFOCUS のトピックを参照してください。

イベントの処理の詳細については、「処理とイベントの発生」を参照してください。

適用対象

こちらもご覧ください