Control.MouseCaptureChanged Evento

Definizione

Si verifica quando il controllo perde il mouse capture.

C#
public event EventHandler MouseCaptureChanged;
C#
public event EventHandler? MouseCaptureChanged;

Tipo evento

Esempio

Nell'esempio di codice seguente viene illustrato l'evento MouseCaptureChanged per un Button controllo.

C#
private void button1_MouseDown(object sender, MouseEventArgs e)
{
    System.Diagnostics.Debug.WriteLine("button1_MouseDown");
}

private void button1_MouseUp(object sender, MouseEventArgs e)
{
    System.Diagnostics.Debug.WriteLine("button1_MouseUp");
}

private void button1_MouseCaptureChanged(object sender, EventArgs e)
{
    System.Diagnostics.Debug.WriteLine("button1_MouseCaptureChanged");
}

Per testare questo esempio, eseguirlo nel debugger premendo F5. Aprire la finestra Output in Visual Studio in modo che sia possibile visualizzare quando vengono generati eventi. Fare clic su e notare l'output Button seguente.

button1_MouseDown

button1_MouseUp

button1_MouseCaptureChanged

Fare clic e tenere premuto il pulsante sinistro del mouse sul Button controllo. Quando si fa ancora clic sul mouse, premere ALT+TAB per passare a un altro programma. Si noti che l'evento MouseCaptureChanged viene generato consentendo di gestire potenzialmente questo scenario. A seconda delle azioni, l'evento MouseUp potrebbe non essere generato. È anche possibile provare questo test con il tasto Windows o CTRL+ESC.

button1_MouseDown

button1_MouseCaptureChanged

Commenti

In scenari rari potrebbe essere necessario rilevare l'input imprevisto. Si considerino ad esempio gli scenari seguenti.

  • Durante un'operazione del mouse, l'utente apre il menu Start premendo il tasto Windows o CTRL+ESC.

  • Durante un'operazione del mouse, l'utente passa a un altro programma premendo ALT+TAB.

  • Durante un'operazione del mouse, un altro programma visualizza una finestra o una finestra di messaggio che elimina lo stato attivo dall'applicazione corrente.

Le operazioni del mouse possono includere clic e tenere premuto il mouse su un modulo o un controllo oppure eseguire un'operazione di trascinamento del mouse. Se è necessario rilevare quando un modulo o un controllo perde l'acquisizione del mouse per questi scenari imprevisti e correlati, è possibile usare l'evento MouseCaptureChanged .

Si applica a

Prodotto Versioni
.NET Framework 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, 10