Explain WPF Object Hierarchy? | WPF Interview Question

                              
 
Object: - As WPF is created using .NET so the first class from which WPF UI classes inherits is the .NET object class.
 
Dispatcher: - This class ensures that all WPF UI objects can be accessed directly only by the thread who own him. Other threads who do not own him have to go via the dispatcher object.
 
Dependency: - WPF UI elements are represented by using XAML which is XML format. At any given moment of time a WPF element is surrounded by other WPF elements and the surrounded elements can influence this element and this is possible because of this dependency class. For example if a textbox surrounded by a panel, its very much possible that the panel background color can be inherited by the textbox.
 
Visual: - This is the class which helps WPF UI to have their visual representation.
 
UI Element: - This class helps to implement features like events, input, layouting etc.
 
Framework element: - This class supports for templating , styles , binding , resources etc.
 
And finally all WPF controls textbox , button , grids  and whatever you can think about from the WPF tool box inherits from the framework element class.