(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Control.BeginInvoke-Methode (Delegate)

Führt den angegebenen Delegaten asynchron für den Thread aus, in dem das, dem Steuerelement zugrunde liegende, Handle erstellt wurde.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public IAsyncResult BeginInvoke(
	Delegate method
)

Parameter

method
Typ: System.Delegate
Ein Delegat für eine Methode, die keine Parameter annimmt.

Rückgabewert

Typ: System.IAsyncResult
Ein IAsyncResult-Objekt, das das Ergebnis der BeginInvoke-Operation darstellt.

AusnahmeBedingung
InvalidOperationException

Kein entsprechendes Fensterhandle wird gefunden.

Der Delegat wird asynchron aufgerufen und diese Methode unmittelbar danach beendet. Der Aufruf dieser Methode ist von jedem Thread aus möglich, einschließlich des Threads, der Besitzer des Steuerelementhandles ist. Wenn das Handle des Steuerelements noch nicht vorhanden ist, durchsucht diese Methode die Kette der übergeordneten Elemente bis zu einem Steuerelement oder Formular, für das ein Fensterhandle vorhanden ist. Wenn kein geeignetes Handle gefunden werden kann, löst BeginInvoke eine Ausnahme aus. Ausnahmen in der Delegatmethode werden als nicht abgefangen betrachtet und an den Handler für nicht abgefangene Ausnahmen dieser Anwendung gesendet.

Sie können EndInvoke aufrufen, um den Rückgabewert aus dem Delegaten abzurufen, wenn erforderlich, aber dies ist nicht unbedingt erforderlich. EndInvoke blockiert, bis der Rückgabewert abgerufen werden kann.

HinweisHinweis

Die meisten Methoden eines Steuerelements können nur von dem Thread aufgerufen werden, in dem das Steuerelement erstellt wurde. Abgesehen von der InvokeRequired-Eigenschaft können vier Methoden in einem Steuerelement threadsicher aufgerufen werden: Invoke, BeginInvoke, EndInvoke und CreateGraphics, wenn das Handle für das Steuerelement bereits erstellt wurde. Das Aufrufen von CreateGraphics vor dem Erstellen des Handles des Steuerelements in einem Hintergrundthread kann zu unzulässigen threadübergreifenden Aufrufen führen. Verwenden Sie bei allen anderen Methodenaufrufen eine der Aufrufmethoden für das Marshallen des Aufrufs an den Steuerelementthread. Die Aufrufmethoden rufen immer ihre Rückrufe an den Steuerelementthread auf.

HinweisHinweis

Eine Ausnahme könnte ausgelöst werden, wenn der Thread, der die Meldung verarbeiten sollte, nicht mehr aktiv ist.

Im folgenden Codebeispiel wird eine Verwendung der BeginInvoke-Methode veranschaulicht.


public delegate void InvokeDelegate();

private void Invoke_Click(object sender, EventArgs e)
{
   myTextBox.BeginInvoke(new InvokeDelegate(InvokeMethod));
}
public void InvokeMethod()
{
   myTextBox.Text = "Executed the given delegate";
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft