Dispatcher.Invoke Metoda

Definicja

Wykonuje określony delegat synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate synchronously on the thread the Dispatcher is associated with.

Przeciążenia

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

Wykonuje określony delegat o określonym priorytecie synchronicznie na wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

Invoke(DispatcherPriority, TimeSpan, Delegate, Object)

Wykonuje określony delegat o określonym priorytecie synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified argument synchronously on the thread the Dispatcher is associated with.

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

Wykonuje określony delegat o określonym priorytecie synchronicznie na wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

Invoke(Action, DispatcherPriority, CancellationToken, TimeSpan)

Wykonuje określony Action synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously at the specified priority on the thread the Dispatcher is associated with.

Invoke(DispatcherPriority, TimeSpan, Delegate)

Wykonuje określony delegat synchronicznie o określonym priorytecie i z określoną wartością limitu czasu w wątku, który Dispatcher został utworzony.Executes the specified delegate synchronously at the specified priority and with the specified time-out value on the thread the Dispatcher was created.

Invoke(DispatcherPriority, Delegate, Object)

Wykonuje określony delegat o określonym priorytecie synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified argument synchronously on the thread the Dispatcher is associated with.

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

Wykonuje określony delegat w wyznaczonym przedziale czasu o określonym priorytecie z określonymi argumentami synchronicznie w wątku, Dispatcher z którym jest skojarzony.Executes the specified delegate within the designated time span at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

Invoke(Delegate, TimeSpan, Object[])

Wykonuje określony delegat w wyznaczonym przedziale czasu o określonym priorytecie z określonymi argumentami synchronicznie w wątku, Dispatcher z którym jest skojarzony.Executes the specified delegate within the designated time span at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

Invoke(Action, DispatcherPriority, CancellationToken)

Wykonuje określony Action synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously at the specified priority on the thread the Dispatcher is associated with.

Invoke(DispatcherPriority, Delegate)

Wykonuje określony delegat synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate synchronously at the specified priority on the thread on which the Dispatcher is associated with.

Invoke(Delegate, Object[])

Wykonuje określony delegat z określonymi argumentami synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate with the specified arguments synchronously on the thread the Dispatcher is associated with.

Invoke(Action, DispatcherPriority)

Wykonuje określony Action synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously at the specified priority on the thread the Dispatcher is associated with.

Invoke(Action)

Wykonuje określony Action synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously on the thread the Dispatcher is associated with.

Invoke(Delegate, DispatcherPriority, Object[])

Wykonuje określony delegat o określonym priorytecie synchronicznie na wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

Invoke<TResult>(Func<TResult>)

Wykonuje określony Func<TResult> synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously on the thread the Dispatcher is associated with.

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

Wykonuje określony Func<TResult> synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously at the specified priority on the thread the Dispatcher is associated with.

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

Wykonuje określony Func<TResult> synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously at the specified priority on the thread the Dispatcher is associated with.

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

Wykonuje określony Func<TResult> synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously at the specified priority on the thread the Dispatcher is associated with.

Przykłady

Poniższy przykład umieszcza delegata Dispatcher Normal na przy użyciu Invoke.The following example places a delegate onto a Dispatcher at Normal using Invoke.

// 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

Uwagi

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

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

Wykonuje określony delegat o określonym priorytecie synchronicznie na wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

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);
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

Parametry

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

timeout
TimeSpan

Maksymalny czas oczekiwania na zakończenie operacji.The maximum time to wait for the operation to finish.

method
Delegate

Delegat do metody, która przyjmuje wiele argumentów, które są wypychane Dispatcher do kolejki zdarzeń.A delegate to a method that takes multiple arguments, which is pushed onto the Dispatcher event queue.

arg
Object

Obiekt, który ma zostać przekazany jako argument do określonej metody.An object to pass as an argument to the specified method.

args
Object[]

Tablica obiektów do przekazania jako argumenty do określonej metody.An array of objects to pass as arguments to the specified method.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Atrybuty

Wyjątki

priorityjest równe Inactive.priority is equal to Inactive.

priorityjest nieprawidłowy DispatcherPriority.priority is not a valid DispatcherPriority.

methodjest null.method is null.

Uwagi

Argmoże być null , jeśli argument nie jest wymagany.Arg can be null if an argument is not needed.

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke(DispatcherPriority, TimeSpan, Delegate, Object)

Wykonuje określony delegat o określonym priorytecie synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified argument synchronously on the thread the Dispatcher is associated with.

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);
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

Parametry

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

timeout
TimeSpan

Maksymalny czas oczekiwania na zakończenie operacji.The maximum time to wait for the operation to finish.

method
Delegate

Delegat do metody, która przyjmuje wiele argumentów, które są wypychane Dispatcher do kolejki zdarzeń.A delegate to a method that takes multiple arguments, which is pushed onto the Dispatcher event queue.

arg
Object

Obiekt, który ma zostać przekazany jako argument do danej metody.An object to pass as an argument to the given method. Może to być null brak argumentów.This can be null if no arguments are needed.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Atrybuty

Wyjątki

priorityjest równe Inactive.priority is equal to Inactive.

prioritynie jest prawidłowym priorytetem.priority is not a valid priority.

methodjest null.method is null.

Uwagi

Argmoże być null , jeśli argument nie jest wymaganyArg can be null if an argument is not needed

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

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

Wykonuje określony delegat o określonym priorytecie synchronicznie na wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

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);
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

Parametry

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

method
Delegate

Delegat do metody, która przyjmuje wiele argumentów, które są wypychane Dispatcher do kolejki zdarzeń.A delegate to a method that takes multiple arguments, which is pushed onto the Dispatcher event queue.

arg
Object

Obiekt, który ma zostać przekazany jako argument do danej metody.An object to pass as an argument to the given method.

args
Object[]

Tablica obiektów do przekazania jako argumenty do danej metody.An array of objects to pass as arguments to the given method.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Atrybuty

Wyjątki

priorityjest równe Inactive.priority is equal to Inactive.

prioritynie jest prawidłowym priorytetem.priority is not a valid priority.

methodjest null.method is null.

Uwagi

Argmoże być null , jeśli argument nie jest wymaganyArg can be null if an argument is not needed

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke(Action, DispatcherPriority, CancellationToken, TimeSpan)

Wykonuje określony Action synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously at the specified priority on the thread the Dispatcher is associated with.

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

Parametry

callback
Action

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

priority
DispatcherPriority

Priorytet określający kolejność wywoływania określonego wywołania zwrotnego względem innych oczekujących operacji w Dispatcherelemencie.The priority that determines in what order the specified callback is invoked relative to the other pending operations in the Dispatcher.

cancellationToken
CancellationToken

Obiekt, który wskazuje, czy anulować akcję.An object that indicates whether to cancel the action.

timeout
TimeSpan

Minimalny czas oczekiwania na uruchomienie operacji.The minimum amount of time to wait for the operation to start.

Invoke(DispatcherPriority, TimeSpan, Delegate)

Wykonuje określony delegat synchronicznie o określonym priorytecie i z określoną wartością limitu czasu w wątku, który Dispatcher został utworzony.Executes the specified delegate synchronously at the specified priority and with the specified time-out value on the thread the Dispatcher was created.

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);
member this.Invoke : System.Windows.Threading.DispatcherPriority * TimeSpan * Delegate -> obj
Public Function Invoke (priority As DispatcherPriority, timeout As TimeSpan, method As Delegate) As Object

Parametry

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

timeout
TimeSpan

Maksymalny czas oczekiwania na zakończenie operacji.The maximum time to wait for the operation to finish.

method
Delegate

Delegat do metody, która nie przyjmuje argumentów, która jest wypychana Dispatcher do kolejki zdarzeń.The delegate to a method that takes no arguments, which is pushed onto the Dispatcher event queue.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Atrybuty

Uwagi

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke(DispatcherPriority, Delegate, Object)

Wykonuje określony delegat o określonym priorytecie synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified argument synchronously on the thread the Dispatcher is associated with.

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);
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate * obj -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate, arg As Object) As Object

Parametry

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

method
Delegate

Delegat do metody, która przyjmuje jeden argument, który jest wypychany Dispatcher do kolejki zdarzeń.A delegate to a method that takes one argument, which is pushed onto the Dispatcher event queue.

arg
Object

Obiekt, który ma zostać przekazany jako argument do danej metody.An object to pass as an argument to the given method.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Atrybuty

Wyjątki

priorityjest równe Inactive.priority is equal to Inactive.

prioritynie jest prawidłowym priorytetem.priority is not a valid priority.

methodjest null.method is null.

Uwagi

Argmoże być null , jeśli argument nie jest wymaganyArg can be null if an argument is not needed

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

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

Wykonuje określony delegat w wyznaczonym przedziale czasu o określonym priorytecie z określonymi argumentami synchronicznie w wątku, Dispatcher z którym jest skojarzony.Executes the specified delegate within the designated time span at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

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

Parametry

method
Delegate

Delegat do metody, która pobiera parametry określone w args, który jest wypychany Dispatcher do kolejki zdarzeń.A delegate to a method that takes parameters specified in args, which is pushed onto the Dispatcher event queue.

timeout
TimeSpan

Maksymalna ilość czasu oczekiwania na zakończenie operacji.The maximum amount of time to wait for the operation to complete.

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

args
Object[]

Tablica obiektów do przekazania jako argumenty do danej metody.An array of objects to pass as arguments to the given method. Może być null.Can be null.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Uwagi

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke(Delegate, TimeSpan, Object[])

Wykonuje określony delegat w wyznaczonym przedziale czasu o określonym priorytecie z określonymi argumentami synchronicznie w wątku, Dispatcher z którym jest skojarzony.Executes the specified delegate within the designated time span at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

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

Parametry

method
Delegate

Delegat do metody, która pobiera parametry określone w args, który jest wypychany Dispatcher do kolejki zdarzeń.A delegate to a method that takes parameters specified in args, which is pushed onto the Dispatcher event queue.

timeout
TimeSpan

Maksymalna ilość czasu oczekiwania na zakończenie operacji.The maximum amount of time to wait for the operation to complete.

args
Object[]

Tablica obiektów do przekazania jako argumenty do danej metody.An array of objects to pass as arguments to the given method. Może być null.Can be null.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Uwagi

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke(Action, DispatcherPriority, CancellationToken)

Wykonuje określony Action synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously at the specified priority on the thread the Dispatcher is associated with.

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

Parametry

callback
Action

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

priority
DispatcherPriority

Priorytet określający kolejność wywoływania określonego wywołania zwrotnego względem innych oczekujących operacji w Dispatcherelemencie.The priority that determines in what order the specified callback is invoked relative to the other pending operations in the Dispatcher.

cancellationToken
CancellationToken

Obiekt, który wskazuje, czy anulować akcję.An object that indicates whether to cancel the action.

Invoke(DispatcherPriority, Delegate)

Wykonuje określony delegat synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate synchronously at the specified priority on the thread on which the Dispatcher is associated with.

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);
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate) As Object

Parametry

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

method
Delegate

Delegat do metody, która nie przyjmuje argumentów, która jest wypychana Dispatcher do kolejki zdarzeń.A delegate to a method that takes no arguments, which is pushed onto the Dispatcher event queue.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Atrybuty

Wyjątki

priorityjest równe Inactive.priority is equal to Inactive.

prioritynie jest prawidłowym priorytetem.priority is not a valid priority.

methodjest null.method is null.

Przykłady

Poniższy przykład umieszcza delegata Dispatcher Normal na przy użyciu Invoke.The following example places a delegate onto a Dispatcher at Normal using Invoke.

// 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

Uwagi

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke(Delegate, Object[])

Wykonuje określony delegat z określonymi argumentami synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate with the specified arguments synchronously on the thread the Dispatcher is associated with.

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

Parametry

method
Delegate

Delegat do metody, która pobiera parametry określone w args, który jest wypychany Dispatcher do kolejki zdarzeń.A delegate to a method that takes parameters specified in args, which is pushed onto the Dispatcher event queue.

args
Object[]

Tablica obiektów do przekazania jako argumenty do danej metody.An array of objects to pass as arguments to the given method. Może być null.Can be null.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Uwagi

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke(Action, DispatcherPriority)

Wykonuje określony Action synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously at the specified priority on the thread the Dispatcher is associated with.

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)

Parametry

callback
Action

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

priority
DispatcherPriority

Priorytet określający kolejność wywoływania określonego wywołania zwrotnego względem innych oczekujących operacji w Dispatcherelemencie.The priority that determines in what order the specified callback is invoked relative to the other pending operations in the Dispatcher.

Invoke(Action)

Wykonuje określony Action synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Action synchronously on the thread the Dispatcher is associated with.

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

Parametry

callback
Action

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

Invoke(Delegate, DispatcherPriority, Object[])

Wykonuje określony delegat o określonym priorytecie synchronicznie na wątku, z którym Dispatcher jest skojarzony.Executes the specified delegate at the specified priority with the specified arguments synchronously on the thread the Dispatcher is associated with.

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

Parametry

method
Delegate

Delegat do metody, która pobiera parametry określone w args, który jest wypychany Dispatcher do kolejki zdarzeń.A delegate to a method that takes parameters specified in args, which is pushed onto the Dispatcher event queue.

priority
DispatcherPriority

Priorytet względem innych oczekujących operacji w Dispatcher kolejce zdarzeń jest wywoływany przez określoną metodę.The priority, relative to the other pending operations in the Dispatcher event queue, the specified method is invoked.

args
Object[]

Tablica obiektów do przekazania jako argumenty do danej metody.An array of objects to pass as arguments to the given method. Może być null.Can be null.

Zwraca

Wartość zwracana z wywoływanego delegata lub null Jeśli delegat nie ma zwracanej wartości.The return value from the delegate being invoked or null if the delegate has no return value.

Uwagi

W WPFWPFprogramie tylko wątek, który utworzył element DispatcherObject , może uzyskać dostęp do tego obiektu.In WPFWPF, only the thread that created a DispatcherObject may access that object. Na przykład wątek w tle, który jest odsunięty od głównego wątku interfejsu użytkownika, nie może zaktualizować zawartości Button programu, który został utworzony w wątku interfejsu użytkownika.For example, a background thread that is spun off from the main UI thread cannot update the contents of a Button that was created on the UI thread. Aby wątek w tle mógł uzyskać dostęp do właściwości Buttonzawartości, wątek w tle musi delegować prace Dispatcher do skojarzonego z wątkiem interfejsu użytkownika.In order for the background thread to access the Content property of the Button, the background thread must delegate the work to the Dispatcher associated with the UI thread. Jest to realizowane za pomocą Invoke BeginInvokealbo.This is accomplished by using either Invoke or BeginInvoke. Invokejest synchroniczny BeginInvoke i jest asynchroniczny.Invoke is synchronous and BeginInvoke is asynchronous. Operacja zostanie dodana do kolejki Dispatcher zdarzeń o określonej DispatcherPrioritywartości.The operation is added to the event queue of the Dispatcher at the specified DispatcherPriority.

Invokejest operacją synchroniczną; w związku z tym formant nie zwróci do obiektu wywołującego, dopóki nie zwróci wywołania zwrotnego.Invoke is a synchronous operation; therefore, control will not return to the calling object until after the callback returns.

Invoke<TResult>(Func<TResult>)

Wykonuje określony Func<TResult> synchronicznie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously on the thread the Dispatcher is associated with.

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

Parametry typu

TResult

Typ wartości zwracanej dla określonego delegata.The return value type of the specified delegate.

Parametry

callback
Func<TResult>

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

Zwraca

TResult

Uwagi

Wartość zwracana przez callback.The value returned by callback.

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

Wykonuje określony Func<TResult> synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously at the specified priority on the thread the Dispatcher is associated with.

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

Parametry typu

TResult

Typ wartości zwracanej dla określonego delegata.The return value type of the specified delegate.

Parametry

callback
Func<TResult>

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

priority
DispatcherPriority

Priorytet określający kolejność wywoływania określonego wywołania zwrotnego względem innych oczekujących operacji w Dispatcherelemencie.The priority that determines in what order the specified callback is invoked relative to the other pending operations in the Dispatcher.

Zwraca

TResult

Uwagi

Wartość zwracana przez callback.The value returned by callback.

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

Wykonuje określony Func<TResult> synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously at the specified priority on the thread the Dispatcher is associated with.

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

Parametry typu

TResult

Typ wartości zwracanej dla określonego delegata.The return value type of the specified delegate.

Parametry

callback
Func<TResult>

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

priority
DispatcherPriority

Priorytet określający kolejność wywoływania określonego wywołania zwrotnego względem innych oczekujących operacji w Dispatcherelemencie.The priority that determines in what order the specified callback is invoked relative to the other pending operations in the Dispatcher.

cancellationToken
CancellationToken

Obiekt, który wskazuje, czy anulować operację.An object that indicates whether to cancel the operation.

Zwraca

TResult

Uwagi

Wartość zwracana przez callback.The value returned by callback.

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

Wykonuje określony Func<TResult> synchronicznie o określonym priorytecie w wątku, z którym Dispatcher jest skojarzony.Executes the specified Func<TResult> synchronously at the specified priority on the thread the Dispatcher is associated with.

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

Parametry typu

TResult

Typ wartości zwracanej dla określonego delegata.The return value type of the specified delegate.

Parametry

callback
Func<TResult>

Delegat do wywołania przez dyspozytora.A delegate to invoke through the dispatcher.

priority
DispatcherPriority

Priorytet określający kolejność wywoływania określonego wywołania zwrotnego względem innych oczekujących operacji w Dispatcherelemencie.The priority that determines in what order the specified callback is invoked relative to the other pending operations in the Dispatcher.

cancellationToken
CancellationToken

Obiekt, który wskazuje, czy anulować operację.An object that indicates whether to cancel the operation.

timeout
TimeSpan

Minimalny czas oczekiwania na uruchomienie operacji.The minimum amount of time to wait for the operation to start.

Zwraca

TResult

Uwagi

Wartość zwracana przez callback.The value returned by callback.

Dotyczy