Freigeben über


RunWorkerCompletedEventArgs Klasse

Definition

Stellt Daten für das MethodNameCompleted-Ereignis bereit.

public ref class RunWorkerCompletedEventArgs : System::ComponentModel::AsyncCompletedEventArgs
public class RunWorkerCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
type RunWorkerCompletedEventArgs = class
    inherit AsyncCompletedEventArgs
Public Class RunWorkerCompletedEventArgs
Inherits AsyncCompletedEventArgs
Vererbung
RunWorkerCompletedEventArgs

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung von RunWorkerCompletedEventArgs. Dieses Beispiel ist Teil eines größeren Beispiels für die BackgroundWorker -Klasse.

// This event handler deals with the results of the
// background operation.
void backgroundWorker1_RunWorkerCompleted( Object^ /*sender*/, RunWorkerCompletedEventArgs^ e )
{
   // First, handle the case where an exception was thrown.
   if ( e->Error != nullptr )
   {
      MessageBox::Show( e->Error->Message );
   }
   else
   if ( e->Cancelled )
   {
      // Next, handle the case where the user cancelled 
      // the operation.
      // Note that due to a race condition in 
      // the DoWork event handler, the Cancelled
      // flag may not have been set, even though
      // CancelAsync was called.
      resultLabel->Text = "Cancelled";
   }
   else
   {
      // Finally, handle the case where the operation 
      // succeeded.
      resultLabel->Text = e->Result->ToString();
   }

   // Enable the UpDown control.
   this->numericUpDown1->Enabled = true;

   // Enable the Start button.
   startAsyncButton->Enabled = true;

   // Disable the Cancel button.
   cancelAsyncButton->Enabled = false;
}
// This event handler deals with the results of the
// background operation.
private void backgroundWorker1_RunWorkerCompleted(
    object sender, RunWorkerCompletedEventArgs e)
{
    // First, handle the case where an exception was thrown.
    if (e.Error != null)
    {
        MessageBox.Show(e.Error.Message);
    }
    else if (e.Cancelled)
    {
        // Next, handle the case where the user canceled 
        // the operation.
        // Note that due to a race condition in 
        // the DoWork event handler, the Cancelled
        // flag may not have been set, even though
        // CancelAsync was called.
        resultLabel.Text = "Canceled";
    }
    else
    {
        // Finally, handle the case where the operation 
        // succeeded.
        resultLabel.Text = e.Result.ToString();
    }

    // Enable the UpDown control.
    this.numericUpDown1.Enabled = true;

    // Enable the Start button.
    startAsyncButton.Enabled = true;

    // Disable the Cancel button.
    cancelAsyncButton.Enabled = false;
}
' This event handler deals with the results of the
' background operation.
Private Sub backgroundWorker1_RunWorkerCompleted( _
ByVal sender As Object, ByVal e As RunWorkerCompletedEventArgs) _
Handles backgroundWorker1.RunWorkerCompleted

    ' First, handle the case where an exception was thrown.
    If (e.Error IsNot Nothing) Then
        MessageBox.Show(e.Error.Message)
    ElseIf e.Cancelled Then
        ' Next, handle the case where the user canceled the 
        ' operation.
        ' Note that due to a race condition in 
        ' the DoWork event handler, the Cancelled
        ' flag may not have been set, even though
        ' CancelAsync was called.
        resultLabel.Text = "Canceled"
    Else
        ' Finally, handle the case where the operation succeeded.
        resultLabel.Text = e.Result.ToString()
    End If

    ' Enable the UpDown control.
    Me.numericUpDown1.Enabled = True

    ' Enable the Start button.
    startAsyncButton.Enabled = True

    ' Disable the Cancel button.
    cancelAsyncButton.Enabled = False
End Sub

Hinweise

Bei Verwendung des ereignisbasierten asynchronen Musters für asynchrone Vorgänge initiiert ein Windows Forms Formular oder Steuerelement einen asynchronen Vorgang, indem die BackgroundWorker.RunWorkerAsync -Methode aufgerufen wird. Die -Methode löst das BackgroundWorker.DoWork Ereignis wiederum asynchron aus und übergibt es ein DoWorkEventArgs instance. Wenn der asynchrone Vorgang einen Wert zurückgibt, weist ihn der Ereignishandler in der BackgroundWorker.DoWork Regel der DoWorkEventArgs.Result -Eigenschaft zu. Nach Abschluss des asynchronen Vorgangs wird das BackgroundWorker.RunWorkerCompleted Ereignis ausgelöst und ein RunWorkerCompletedEventArgs instance übergeben, das Informationen über die status des Vorgangs enthält (unabhängig davon, ob er abgebrochen, fehlerhaft oder erfolgreich abgeschlossen wurde). Wenn sie erfolgreich abgeschlossen wurde, enthält die Result -Eigenschaft den Wert, der vom asynchronen Vorgang zurückgegeben und zuvor der DoWorkEventArgs.Result -Eigenschaft zugewiesen wurde.

Hinweis

Das HostProtectionAttribute Attribut, das auf diese Klasse angewendet wird, weist den folgenden Resources Eigenschaftswert auf: SharedState. Das HostProtectionAttribute hat keine Auswirkungen auf Desktopanwendungen (die normalerweise durch Doppelklicken auf ein Symbol, Eingeben eines Befehls oder einer URL in einem Browser gestartet werden). Weitere Informationen finden Sie in der HostProtectionAttribute Klasse oder SQL Server Programming and Host Protection Attribute.

Konstruktoren

RunWorkerCompletedEventArgs(Object, Exception, Boolean)

Initialisiert eine neue Instanz der RunWorkerCompletedEventArgs-Klasse.

Eigenschaften

Cancelled

Ruft einen Wert ab, der angibt, ob ein asynchroner Vorgang abgebrochen wurde.

(Geerbt von AsyncCompletedEventArgs)
Error

Ruft einen Wert ab, der angibt, welcher Fehler während eines asynchronen Vorgangs aufgetreten ist.

(Geerbt von AsyncCompletedEventArgs)
Result

Ruft einen Wert ab, der das Ergebnis eines asynchronen Vorgangs darstellt.

UserState

Ruft einen Wert ab, der den Benutzerzustand darstellt.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
RaiseExceptionIfNecessary()

Löst eine benutzerdefinierte Ausnahme aus, wenn bei einem asynchronen Vorgang ein Fehler aufgetreten ist.

(Geerbt von AsyncCompletedEventArgs)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen