Dispatcher.Invoke Methode

Definitie

Hiermee wordt de opgegeven gemachtigde synchroon uitgevoerd op de thread waarmee de Dispatcher gemachtigde is gekoppeld.

Overloads

Name Description
Invoke(DispatcherPriority, TimeSpan, Delegate, Object, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(DispatcherPriority, TimeSpan, Delegate, Object)

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met het opgegeven argument synchroon op de thread waarmee de Dispatcher gemachtigde is gekoppeld.

Invoke(DispatcherPriority, Delegate, Object, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(Action, DispatcherPriority, CancellationToken, TimeSpan)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(DispatcherPriority, TimeSpan, Delegate)

Hiermee wordt de opgegeven gemachtigde synchroon uitgevoerd op de opgegeven prioriteit en met de opgegeven time-outwaarde op de thread die is Dispatcher gemaakt.

Invoke(DispatcherPriority, Delegate, Object)

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met het opgegeven argument synchroon op de thread waarmee de Dispatcher gemachtigde is gekoppeld.

Invoke(Delegate, TimeSpan, DispatcherPriority, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd binnen de opgegeven tijdsperiode op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(Delegate, TimeSpan, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd binnen de opgegeven tijdsperiode op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(Action, DispatcherPriority, CancellationToken)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(DispatcherPriority, Delegate)

Hiermee wordt de opgegeven gemachtigde synchroon uitgevoerd op de opgegeven prioriteit op de thread waaraan de Dispatcher thread is gekoppeld.

Invoke(Delegate, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher gemachtigde is gekoppeld.

Invoke(Action, DispatcherPriority)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(Action)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke(Delegate, DispatcherPriority, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke<TResult>(Func<TResult>)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke<TResult>(Func<TResult>, DispatcherPriority)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken, TimeSpan)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

Voorbeelden

In het volgende voorbeeld wordt een gemachtigde op een Dispatcher gebruiks- of gebruiksfunctie NormalInvokeweergegeven.

// Places the delegate onto the UI Thread's Dispatcher
private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
    // Place delegate on the Dispatcher.
    this.Dispatcher.Invoke(DispatcherPriority.Normal,
        new TimerDispatcherDelegate(TimerWorkItem));
}
' Places the delegate onto the UI Thread's Dispatcher
Private Sub timer_Elapsed(ByVal sender As Object, ByVal e As ElapsedEventArgs)
    ' Place delegate on the Dispatcher.
    Me.Dispatcher.Invoke(DispatcherPriority.Normal, New TimerDispatcherDelegate(AddressOf TimerWorkItem))
End Sub

Opmerkingen

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Invoke(DispatcherPriority, TimeSpan, Delegate, Object, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, TimeSpan timeout, Delegate ^ method, System::Object ^ arg, ... cli::array <System::Object ^> ^ args);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, TimeSpan timeout, Delegate method, object arg, params object[] args);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * TimeSpan * Delegate * obj * obj[] -> obj
Public Function Invoke (priority As DispatcherPriority, timeout As TimeSpan, method As Delegate, arg As Object, ParamArray args As Object()) As Object

Parameters

priority
DispatcherPriority

De prioriteit, ten opzichte van de andere bewerkingen die in de Dispatcher gebeurteniswachtrij in behandeling zijn, waarmee de opgegeven methode wordt aangeroepen.

timeout
TimeSpan

De maximale hoeveelheid tijd die moet worden gewacht totdat de bewerking is gestart. Zodra de bewerking is gestart, wordt deze voltooid voordat deze methode wordt geretourneerd. Als u een oneindige wachttijd wilt opgeven, gebruikt u de waarde -1. In een gesprek met dezelfde thread wordt elke andere negatieve waarde geconverteerd naar -1, wat resulteert in een oneindige wachttijd. In een crossthread-aanroep werpt elke andere negatieve waarde een ArgumentOutOfRangeException.

method
Delegate

Een gemachtigde naar een methode die meerdere argumenten gebruikt, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

arg
Object

Een object dat als argument moet worden doorgegeven aan de opgegeven methode.

args
Object[]

Een matrix van objecten die als argumenten moeten worden doorgegeven aan de opgegeven methode.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Kenmerken

Uitzonderingen

priority is gelijk aan Inactive.

method is null.

timeout is een ander negatief getal dan -1 en deze methode is aangeroepen in threads.

Opmerkingen

arg kan zijn null als een argument niet nodig is.

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(DispatcherPriority, TimeSpan, Delegate, Object)

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met het opgegeven argument synchroon op de thread waarmee de Dispatcher gemachtigde is gekoppeld.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, TimeSpan timeout, Delegate ^ method, System::Object ^ arg);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, TimeSpan timeout, Delegate method, object arg);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * TimeSpan * Delegate * obj -> obj
Public Function Invoke (priority As DispatcherPriority, timeout As TimeSpan, method As Delegate, arg As Object) As Object

Parameters

priority
DispatcherPriority

De prioriteit, ten opzichte van de andere bewerkingen die in de Dispatcher gebeurteniswachtrij in behandeling zijn, waarmee de opgegeven methode wordt aangeroepen.

timeout
TimeSpan

De maximale hoeveelheid tijd die moet worden gewacht totdat de bewerking is gestart. Zodra de bewerking is gestart, wordt deze voltooid voordat deze methode wordt geretourneerd. Als u een oneindige wachttijd wilt opgeven, gebruikt u de waarde -1. In een gesprek met dezelfde thread wordt elke andere negatieve waarde geconverteerd naar -1, wat resulteert in een oneindige wachttijd. In een crossthread-aanroep werpt elke andere negatieve waarde een ArgumentOutOfRangeException.

method
Delegate

Een gemachtigde naar een methode die meerdere argumenten gebruikt, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

arg
Object

Een object dat als argument moet worden doorgegeven aan de opgegeven methode. Dit kan zijn null als er geen argumenten nodig zijn.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Kenmerken

Uitzonderingen

priority is gelijk aan Inactive.

priority is geen geldige prioriteit.

method is null.

Opmerkingen

arg kan zijn null als een argument niet nodig is

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(DispatcherPriority, Delegate, Object, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, Delegate ^ method, System::Object ^ arg, ... cli::array <System::Object ^> ^ args);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, Delegate method, object arg, params object[] args);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate * obj * obj[] -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate, arg As Object, ParamArray args As Object()) As Object

Parameters

priority
DispatcherPriority

De prioriteit, ten opzichte van de andere bewerkingen die in de Dispatcher gebeurteniswachtrij in behandeling zijn, waarmee de opgegeven methode wordt aangeroepen.

method
Delegate

Een gemachtigde naar een methode die meerdere argumenten gebruikt, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

arg
Object

Een object dat als argument moet worden doorgegeven aan de opgegeven methode.

args
Object[]

Een matrix van objecten die als argumenten moeten worden doorgegeven aan de opgegeven methode.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Kenmerken

Uitzonderingen

priority is gelijk aan Inactive.

priority is geen geldige prioriteit.

method is null.

Opmerkingen

arg kan zijn null als een argument niet nodig is

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(Action, DispatcherPriority, CancellationToken, TimeSpan)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 void Invoke(Action ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken, TimeSpan timeout);
public void Invoke(Action callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken, TimeSpan timeout);
member this.Invoke : Action * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken * TimeSpan -> unit
Public Sub Invoke (callback As Action, priority As DispatcherPriority, cancellationToken As CancellationToken, timeout As TimeSpan)

Parameters

callback
Action

Een gemachtigde actie die moet worden aangeroepen via de dispatcher.

priority
DispatcherPriority

De prioriteit die bepaalt in welke volgorde de opgegeven callback wordt aangeroepen ten opzichte van de andere bewerkingen die in behandeling zijn in de Dispatcher.

cancellationToken
CancellationToken

Een object dat aangeeft of de actie moet worden geannuleerd.

timeout
TimeSpan

De maximale hoeveelheid tijd die moet worden gewacht totdat de bewerking is gestart. Zodra de bewerking is gestart, wordt deze voltooid voordat deze methode wordt geretourneerd. Als u een oneindige wachttijd wilt opgeven, gebruikt u de waarde -1. In een gesprek met dezelfde thread wordt elke andere negatieve waarde geconverteerd naar -1, wat resulteert in een oneindige wachttijd. In een crossthread-aanroep werpt elke andere negatieve waarde een ArgumentOutOfRangeException.

Uitzonderingen

callback is null.

timeout is een ander negatief getal dan -1 en deze methode is aangeroepen in threads.

priority is geen geldige prioriteit.

Het annuleringstoken is geannuleerd. Deze uitzondering wordt opgeslagen in de geretourneerde taak.

Van toepassing op

Invoke(DispatcherPriority, TimeSpan, Delegate)

Hiermee wordt de opgegeven gemachtigde synchroon uitgevoerd op de opgegeven prioriteit en met de opgegeven time-outwaarde op de thread die is Dispatcher gemaakt.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, TimeSpan timeout, Delegate ^ method);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, TimeSpan timeout, Delegate method);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * TimeSpan * Delegate -> obj
Public Function Invoke (priority As DispatcherPriority, timeout As TimeSpan, method As Delegate) As Object

Parameters

priority
DispatcherPriority

De prioriteit, ten opzichte van de andere bewerkingen die in de Dispatcher gebeurteniswachtrij in behandeling zijn, waarmee de opgegeven methode wordt aangeroepen.

timeout
TimeSpan

De maximale hoeveelheid tijd die moet worden gewacht totdat de bewerking is gestart. Zodra de bewerking is gestart, wordt deze voltooid voordat deze methode wordt geretourneerd. Als u een oneindige wachttijd wilt opgeven, gebruikt u de waarde -1. In een gesprek met dezelfde thread wordt elke andere negatieve waarde geconverteerd naar -1, wat resulteert in een oneindige wachttijd. In een crossthread-aanroep werpt elke andere negatieve waarde een ArgumentOutOfRangeException.

method
Delegate

De gedelegeerde naar een methode die geen argumenten gebruikt, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Kenmerken

Uitzonderingen

method is null.

timeout is een ander negatief getal dan -1 en deze methode is aangeroepen in threads.

priority is gelijk aan Inactive.

priority is geen geldige prioriteit.

Opmerkingen

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(DispatcherPriority, Delegate, Object)

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met het opgegeven argument synchroon op de thread waarmee de Dispatcher gemachtigde is gekoppeld.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, Delegate ^ method, System::Object ^ arg);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, Delegate method, object arg);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate * obj -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate, arg As Object) As Object

Parameters

priority
DispatcherPriority

De prioriteit, ten opzichte van de andere bewerkingen die in de Dispatcher gebeurteniswachtrij in behandeling zijn, waarmee de opgegeven methode wordt aangeroepen.

method
Delegate

Een gemachtigde naar een methode die één argument gebruikt, dat naar de Dispatcher gebeurteniswachtrij wordt gepusht.

arg
Object

Een object dat als argument moet worden doorgegeven aan de opgegeven methode.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Kenmerken

Uitzonderingen

priority is gelijk aan Inactive.

priority is geen geldige prioriteit.

method is null.

Opmerkingen

arg kan zijn null als een argument niet nodig is

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(Delegate, TimeSpan, DispatcherPriority, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd binnen de opgegeven tijdsperiode op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 System::Object ^ Invoke(Delegate ^ method, TimeSpan timeout, System::Windows::Threading::DispatcherPriority priority, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, TimeSpan timeout, System.Windows.Threading.DispatcherPriority priority, params object[] args);
member this.Invoke : Delegate * TimeSpan * System.Windows.Threading.DispatcherPriority * obj[] -> obj
Public Function Invoke (method As Delegate, timeout As TimeSpan, priority As DispatcherPriority, ParamArray args As Object()) As Object

Parameters

method
Delegate

Een gemachtigde naar een methode die parameters gebruikt die zijn opgegeven in args, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

timeout
TimeSpan

De maximale hoeveelheid tijd die moet worden gewacht totdat de bewerking is gestart. Zodra de bewerking is gestart, wordt deze voltooid voordat deze methode wordt geretourneerd. Als u een oneindige wachttijd wilt opgeven, gebruikt u de waarde -1. In een gesprek met dezelfde thread wordt elke andere negatieve waarde geconverteerd naar -1, wat resulteert in een oneindige wachttijd. In een crossthread-aanroep werpt elke andere negatieve waarde een ArgumentOutOfRangeException.

priority
DispatcherPriority

De prioriteit, ten opzichte van de andere bewerkingen die in de Dispatcher gebeurteniswachtrij in behandeling zijn, waarmee de opgegeven methode wordt aangeroepen.

args
Object[]

Een matrix van objecten die als argumenten moeten worden doorgegeven aan de opgegeven methode. Kan zijn null.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Uitzonderingen

method is null.

timeout is een ander negatief getal dan -1 en deze methode is aangeroepen in threads.

priority is gelijk aan Inactive.

priority is geen geldige prioriteit.

Opmerkingen

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(Delegate, TimeSpan, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd binnen de opgegeven tijdsperiode op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 System::Object ^ Invoke(Delegate ^ method, TimeSpan timeout, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, TimeSpan timeout, params object[] args);
member this.Invoke : Delegate * TimeSpan * obj[] -> obj
Public Function Invoke (method As Delegate, timeout As TimeSpan, ParamArray args As Object()) As Object

Parameters

method
Delegate

Een gemachtigde naar een methode die parameters gebruikt die zijn opgegeven in args, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

timeout
TimeSpan

De maximale hoeveelheid tijd die moet worden gewacht totdat de bewerking is gestart. Zodra de bewerking is gestart, wordt deze echter voltooid voordat deze methode wordt geretourneerd. Als u een oneindige wachttijd wilt opgeven, gebruikt u de waarde -1. In een gesprek met dezelfde thread wordt elke andere negatieve waarde geconverteerd naar -1, wat resulteert in een oneindige wachttijd. In een crossthread-aanroep werpt elke andere negatieve waarde een ArgumentOutOfRangeException.

args
Object[]

Een matrix van objecten die als argumenten moeten worden doorgegeven aan de opgegeven methode. Dit kan zijn null als er geen argumenten nodig zijn.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Uitzonderingen

method is null.

timeout is een ander negatief getal dan -1 en u aanroept over threads.

Opmerkingen

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(Action, DispatcherPriority, CancellationToken)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 void Invoke(Action ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken);
public void Invoke(Action callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken);
member this.Invoke : Action * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken -> unit
Public Sub Invoke (callback As Action, priority As DispatcherPriority, cancellationToken As CancellationToken)

Parameters

callback
Action

Een gemachtigde die moet worden aangeroepen via de dispatcher.

priority
DispatcherPriority

De prioriteit die bepaalt in welke volgorde de opgegeven callback wordt aangeroepen ten opzichte van de andere bewerkingen die in behandeling zijn in de Dispatcher.

cancellationToken
CancellationToken

Een object dat aangeeft of de actie moet worden geannuleerd.

Uitzonderingen

Het annuleringstoken is geannuleerd. Deze uitzondering wordt opgeslagen in de geretourneerde taak.

Van toepassing op

Invoke(DispatcherPriority, Delegate)

Hiermee wordt de opgegeven gemachtigde synchroon uitgevoerd op de opgegeven prioriteit op de thread waaraan de Dispatcher thread is gekoppeld.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, Delegate ^ method);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, Delegate method);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate) As Object

Parameters

priority
DispatcherPriority

De prioriteit waarmee de opgegeven methode wordt aangeroepen, ten opzichte van de andere in behandeling zijnde bewerkingen in de Dispatcher gebeurteniswachtrij.

method
Delegate

Een gemachtigde naar een methode die geen argumenten gebruikt, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Kenmerken

Uitzonderingen

priority is gelijk aan Inactive.

priority is geen geldige prioriteit.

method is null.

Voorbeelden

In het volgende voorbeeld wordt een gemachtigde op een Dispatcher gebruiks- of gebruiksfunctie NormalInvokeweergegeven.

// Places the delegate onto the UI Thread's Dispatcher
private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
    // Place delegate on the Dispatcher.
    this.Dispatcher.Invoke(DispatcherPriority.Normal,
        new TimerDispatcherDelegate(TimerWorkItem));
}
' Places the delegate onto the UI Thread's Dispatcher
Private Sub timer_Elapsed(ByVal sender As Object, ByVal e As ElapsedEventArgs)
    ' Place delegate on the Dispatcher.
    Me.Dispatcher.Invoke(DispatcherPriority.Normal, New TimerDispatcherDelegate(AddressOf TimerWorkItem))
End Sub

Opmerkingen

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(Delegate, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher gemachtigde is gekoppeld.

public:
 System::Object ^ Invoke(Delegate ^ method, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, params object[] args);
member this.Invoke : Delegate * obj[] -> obj
Public Function Invoke (method As Delegate, ParamArray args As Object()) As Object

Parameters

method
Delegate

Een gemachtigde naar een methode die parameters gebruikt die zijn opgegeven in args, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

args
Object[]

Een matrix van objecten die als argumenten moeten worden doorgegeven aan de opgegeven methode. Kan zijn null.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Opmerkingen

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke(Action, DispatcherPriority)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 void Invoke(Action ^ callback, System::Windows::Threading::DispatcherPriority priority);
public void Invoke(Action callback, System.Windows.Threading.DispatcherPriority priority);
member this.Invoke : Action * System.Windows.Threading.DispatcherPriority -> unit
Public Sub Invoke (callback As Action, priority As DispatcherPriority)

Parameters

callback
Action

Een gemachtigde die moet worden aangeroepen via de dispatcher.

priority
DispatcherPriority

De prioriteit die bepaalt in welke volgorde de opgegeven callback wordt aangeroepen ten opzichte van de andere bewerkingen die in behandeling zijn in de Dispatcher.

Van toepassing op

Invoke(Action)

Hiermee wordt de opgegeven Action synchroon uitgevoerd op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 void Invoke(Action ^ callback);
public void Invoke(Action callback);
member this.Invoke : Action -> unit
Public Sub Invoke (callback As Action)

Parameters

callback
Action

Een gemachtigde die moet worden aangeroepen via de dispatcher.

Opmerkingen

De standaardprioriteit is DispatcherPriority.Send.

Van toepassing op

Invoke(Delegate, DispatcherPriority, Object[])

Hiermee wordt de opgegeven gemachtigde uitgevoerd op de opgegeven prioriteit met de opgegeven argumenten synchroon op de thread waarmee de Dispatcher thread is gekoppeld.

public:
 System::Object ^ Invoke(Delegate ^ method, System::Windows::Threading::DispatcherPriority priority, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, System.Windows.Threading.DispatcherPriority priority, params object[] args);
member this.Invoke : Delegate * System.Windows.Threading.DispatcherPriority * obj[] -> obj
Public Function Invoke (method As Delegate, priority As DispatcherPriority, ParamArray args As Object()) As Object

Parameters

method
Delegate

Een gemachtigde naar een methode die parameters gebruikt die zijn opgegeven in args, die naar de Dispatcher gebeurteniswachtrij wordt gepusht.

priority
DispatcherPriority

De prioriteit waarmee de opgegeven methode wordt aangeroepen, ten opzichte van de andere in behandeling zijnde bewerkingen in de Dispatcher gebeurteniswachtrij.

args
Object[]

Een matrix van objecten die als argumenten moeten worden doorgegeven aan de opgegeven methode. Kan zijn null.

Retouren

De retourwaarde van de gemachtigde die wordt aangeroepen of null als de gemachtigde geen retourwaarde heeft.

Opmerkingen

In WPF heeft alleen de thread die een DispatcherObject heeft gemaakt, toegang tot dat object. Een achtergrondthread die wordt afgesponnen vanuit de hoofd-UI-thread, kan bijvoorbeeld de inhoud van een Button thread die is gemaakt op de UI-thread, niet bijwerken. Om de achtergrondthread toegang te geven tot de eigenschap Inhoud van de Buttonthread, moet de achtergrondthread het werk delegeren aan de Dispatcher gekoppelde ui-thread. Dit wordt bereikt met behulp van Invoke of BeginInvoke. Invoke is synchroon en BeginInvoke asynchroon. De bewerking wordt toegevoegd aan de gebeurteniswachtrij van de Dispatcher opgegeven DispatcherPriority.

Invoke is een synchrone bewerking; Daarom keert het besturingselement pas terug naar het aanroepende object nadat de callback is geretourneerd.

Van toepassing op

Invoke<TResult>(Func<TResult>)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de thread waarmee de Dispatcher thread is gekoppeld.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback);
public TResult Invoke<TResult>(Func<TResult> callback);
member this.Invoke : Func<'Result> -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult)) As TResult

Type parameters

TResult

Het retourwaardetype van de opgegeven gemachtigde.

Parameters

callback
Func<TResult>

Een gemachtigde die moet worden aangeroepen via de dispatcher.

Retouren

TResult

De waarde die wordt geretourneerd door callback.

Van toepassing op

Invoke<TResult>(Func<TResult>, DispatcherPriority)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback, System::Windows::Threading::DispatcherPriority priority);
public TResult Invoke<TResult>(Func<TResult> callback, System.Windows.Threading.DispatcherPriority priority);
member this.Invoke : Func<'Result> * System.Windows.Threading.DispatcherPriority -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult), priority As DispatcherPriority) As TResult

Type parameters

TResult

Het retourwaardetype van de opgegeven gemachtigde.

Parameters

callback
Func<TResult>

Een gemachtigde die moet worden aangeroepen via de dispatcher.

priority
DispatcherPriority

De prioriteit die bepaalt in welke volgorde de opgegeven callback wordt aangeroepen ten opzichte van de andere bewerkingen die in behandeling zijn in de Dispatcher.

Retouren

TResult

De waarde die wordt geretourneerd door callback.

Van toepassing op

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken);
public TResult Invoke<TResult>(Func<TResult> callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken);
member this.Invoke : Func<'Result> * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult), priority As DispatcherPriority, cancellationToken As CancellationToken) As TResult

Type parameters

TResult

Het retourwaardetype van de opgegeven gemachtigde.

Parameters

callback
Func<TResult>

Een gemachtigde die moet worden aangeroepen via de dispatcher.

priority
DispatcherPriority

De prioriteit die bepaalt in welke volgorde de opgegeven callback wordt aangeroepen ten opzichte van de andere bewerkingen die in behandeling zijn in de Dispatcher.

cancellationToken
CancellationToken

Een object dat aangeeft of de bewerking moet worden geannuleerd.

Retouren

TResult

De waarde die wordt geretourneerd door callback.

Uitzonderingen

Het annuleringstoken is geannuleerd. Deze uitzondering wordt opgeslagen in de geretourneerde taak.

Van toepassing op

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken, TimeSpan)

Hiermee wordt de opgegeven Func<TResult> synchroon uitgevoerd op de opgegeven prioriteit op de thread waarmee de Dispatcher thread is gekoppeld.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken, TimeSpan timeout);
public TResult Invoke<TResult>(Func<TResult> callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken, TimeSpan timeout);
member this.Invoke : Func<'Result> * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken * TimeSpan -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult), priority As DispatcherPriority, cancellationToken As CancellationToken, timeout As TimeSpan) As TResult

Type parameters

TResult

Het retourwaardetype van de opgegeven gemachtigde.

Parameters

callback
Func<TResult>

Een gemachtigde die moet worden aangeroepen via de dispatcher.

priority
DispatcherPriority

De prioriteit die bepaalt in welke volgorde de opgegeven callback wordt aangeroepen ten opzichte van de andere bewerkingen die in behandeling zijn in de Dispatcher.

cancellationToken
CancellationToken

Een object dat aangeeft of de bewerking moet worden geannuleerd.

timeout
TimeSpan

De maximale hoeveelheid tijd die moet worden gewacht totdat de bewerking is gestart. Zodra de bewerking is gestart, wordt deze voltooid voordat deze methode wordt geretourneerd. Als u een oneindige wachttijd wilt opgeven, gebruikt u de waarde -1. In een gesprek met dezelfde thread wordt elke andere negatieve waarde geconverteerd naar -1, wat resulteert in een oneindige wachttijd. In een crossthread-aanroep werpt elke andere negatieve waarde een ArgumentOutOfRangeException.

Retouren

TResult

De waarde die wordt geretourneerd door callback.

Uitzonderingen

callback is null.

timeout is een ander negatief getal dan -1 en de methode is aangeroepen in threads.

priority is geen geldige prioriteit.

Het annuleringstoken is geannuleerd. Deze uitzondering wordt opgeslagen in de geretourneerde taak.

Van toepassing op