In WPF, Dispatcher handles most(maybe all) UI work items in loops, like queues. Different work items have different priorities so that Dispatcher can handle some items with very high priority in time.
Raising a property changed event will transfer to a data binding task and will be put in Dispatcher's queue with DataBinding priority. Dispatcher will manage the item's position inside the queue and execute it, which is to update data binding here, at an appropriate time.