Object
public Dispatcher Dispatcher { get; }
Most objects in WPF derive from DispatcherObject, which provides the basic constructs for dealing with concurrency and threading. Such objects are associated with a Dispatcher.
Only the thread that the Dispatcher was created on may access the DispatcherObject directly. To access a DispatcherObject from a thread other than the thread the DispatcherObject was created on, a call to Invoke or BeginInvoke on the Dispatcher the object is associated with is required.