WPF模板是把控件MVC模式化

  众所周知,MVC模式是把程序分成模型(Model)、视图(View)、控制(Controller)等3个部分,而控件实际上也是可以分成MVC的。

    控件有外观,对应View,在MVC中的View是一个显示框架,框架中的一些部分用控件的数据内容填充。在WPF中就是控件的模板。

    控件有数据,或者称为控件的数据内容,例如:控件的长、宽、背景色、标题等等,DataGrid显示的数据列表等,都是控件的数据内容,

          这些对应Model。在WPF中对应后台代码。

    控件有行为,或者称为算法内容,对应Controller。在WPF中对应后台代码。

  在传统的Windows API编程方式中,控件是浑然一体的,而WPF将控件分成了M、V、C 3个部分。其中的View,在WPF中称为模板,

我可以通过为控件定义新的模板改变控件的外观。而模板分为DataTemplate、ControlTemplate。其中ControlTemplate对应整个View,

而DataTemplate对应View中用来显示数据的部分(DataTemplate定义控件内容的外观,即控件的Content属性所引用对象的外观)。

至于控件的M、C就是后台代码了。

原文地址:https://www.cnblogs.com/dibowe/p/3490801.html