每个 WPF 开发人员都应该了解什么?
入门级
- 拥有深厚的 .NET 2.0 背景并愿意学习!
- 解释一下依赖属性?
- 什么是风格?
- 什么是模板?
- 绑定(bind)
- 基类之间的差异:Visual、UIElement、FrameworkElement、Control
- 视觉树与逻辑树?
- 属性更改通知(INotifyPropertyChange 和 ObservableCollection)
- ResourceDictionary - 由 a7an 添加
- 用户控件 - 由 a7an 添加
- 气泡和隧道路由策略之间的差异 - 由 Carlo 添加
- 为什么 Microsoft 还要引入另一种标记语言?
- XAML
中级
- 路由事件和命令
- 转换器 - 由 Artur Carvalho 添加
- 解释一下 WPF 的 2 遍布局引擎?
- 如何实现面板?
- 互操作性(WPF/WinForms)
- Blend/Cider - 由a7an添加
- 动画和 Storyboard
- ClickOnce Deployment
- 换肤/主题
- 自定义控件
- 工作线程如何更新 UI?
- DataTemplate 与 HierarchicalDataTemplate
- ItemsControl、ItemsPresenter、ContentControl、ContentPresenter
- 不同类型的触发器
高级
- 依恋行为的示例?
- 什么是 PRISM、CAL 和 CAG?
- 工作线程如何更新 UI?
- WPF 3D - 由 a7an 添加
- Silverlight 2 和 WPF 之间的差异
- MVVM/MVP - 由 a7an 添加
- WPF 性能调整
- 像素着色器
- Freezable 的用途
还有其他“技巧”问题要问吗?
您希望您的 WPF 开发人员了解 Blend 吗?
请您参考如下方法:
我很惊讶还没有人提到 XAML 的基本知识。了解 XAML 是什么,并能够使用 XAML 而不是图形设计工具进行一些基本编辑。中级开发人员应该能够使用 XAMLPad 等工具构建表单/图形原型(prototype)。