What should every WPF developer know?
Entry Level
- Strong .NET 2.0 Background & willing to learn!
- Explain dependency properties?
- What's a style?
- What's a template?
- Binding
- Differences between base classes: Visual, UIElement, FrameworkElement, Control
- Visual vs Logical tree?
- Property Change Notification (INotifyPropertyChange and ObservableCollection)
- ResourceDictionary - Added by a7an
- UserControls - Added by a7an
- difference between bubble and tunnel routing strategies - added by Carlo
- XAML
Mid-level
- Routed Events & Commands
- Converters - Added by Artur Carvalho
- Explain WPF's 2-pass layout engine?
- How to implement a panel?
- Interoperability (WPF/WinForms)
- Blend/Cider - Added by a7an
- animations and storyboarding
- ClickOnce Deployment
- Skinning/Themeing
- Custom Controls
- How can worker threads update the UI?
- DataTemplate vs HierarchicalDataTemplate
- ItemsControl vs ItemsPresenter vs ContentControl vs ContentPresenter
- Different types of Triggers
- How to do Animations through StoryBoards
Senior
- Example of attached behavior?
- What is PRISM,CAL & CAG?
- How can worker threads update the UI?
- WPF 3D - Added by a7an
- Differences between Silverlight 2 and WPF
- MVVM/MVP - Added by a7an
- WPF Performance tuning
- Pixel Shaders
- Purpose of Freezables
Any other "trick" questions to ask?
Do you expect your WPF developer to know blend?