5
A
回答
6
甲样式控制的控制的各个属性。例如,按钮样式可以说,“对于每个按钮,都使用此背景。”风格正在改变控制上的单一属性。
控件模板实际上是处理控件如何显示其绑定数据的方式。不是说“我想覆盖控件的属性”,而是将其他较小的控件组合到一个控件中,该控件可以呈现绑定数据的不同视图。
以前在WinForms中,如果您想编写一个自定义列表框(比如每个项目旁边都有一个图标),则必须从ListView控件继承并重写绘画方法。这涉及大量的实验 - 巨大的痛苦。使用WPF模板,可以使用XAML一起构造更小的控件,并将它们绑定到父控件的不同属性。您实际上是为控件定义了可视化树。
请参阅this查尔斯彼得堡深入解释文章。
3
想象一下,你的控制权是一所房子。
A Style
在概念上类似于放下新地毯和画墙。房子本身仍然是一样的,但它的外观是不同的。
A ControlTemplate
等同于敲开墙壁或添加温室。房子的实际结构已经改变。
如果要更改控件E.G.的外观,请使用Style
。它的背景颜色或边框的粗细。当您需要更改控件的基础结构时,请使用ControlTemplate
。当您想要更改控件的某些方面的布局时,这非常有用。一个很好的例子是this文章,它将TabControl
重新模板化为看起来像Microsoft Outlook中的导航器。
相关问题
- 1. 样式和控制模板之间的区别
- 2. wpf中控制模板和数据模板之间的区别
- 3. 模板include和jquery.load之间的区别?
- 4. C++:NVI和模板方法模式之间的区别?
- 5. 模板方法(分离)和策略模式之间的区别?
- 6. 指令与模板之间的区别与没有模板和Angular 1.2和1.1之间的区别?
- 7. 项目模板和版面模板之间的区别
- 8. 类模板和函数模板之间的区别
- 9. 编辑器模板和显示模板之间的区别
- 10. .cpt模板和.pt模板之间有什么区别?
- 11. 像这样的模糊之间的区别和更像这样?
- 12. Vistor模式和状态模式之间的区别?
- 13. 网络模式和非网络模式之间的区别
- 14. 火花独立模式和本地模式之间的区别?
- 15. 代理模式和适配器模式之间的区别?
- 16. 本机模式和集成模式之间的区别
- 17. 怪癖模式和标准模式之间的区别JavaScript
- 18. 构造器模式和原型模式之间的区别
- 19. 用户控件和自定义控件库之间的区别
- 20. Skript和控制台之间的区别
- 21. for-each和xsl中的模板之间的区别?
- 22. Grails中的视图和模板之间的区别
- 23. django模板标记中的formset和formset.forms之间的区别
- 24. 什么是产量和包含的模板之间的区别
- 25. C++模板的Class和Typename之间的区别
- 26. lxml中的属性和样式标签之间的区别
- 27. jsf页面中的样式和styleClass之间的区别
- 28. Meteor.js中的模板助手和模板变量之间的区别
- 29. 扩展和模块之间的区别?
- 30. MVVM - 模型和ViewModel之间的区别
您好,非常感谢您对本文的详细解释和链接。我会尽快看看它。 – 2010-02-26 18:10:17