wpf中控制模板和数据模板之间的区别

Arc*_*hie 3 wpf datatemplate controltemplate

有人可以详细说明ControlTemplateDataTemplatewpf 之间的区别吗?

在自定义控件的情况下应该使用什么?比如一个StackPanel可能有一个image和一个TextBox

在某些使用"Content"属性定义自定义控件的情况下,这似乎令人困惑.

如果能够提供如何在不同场景中使用每个场景的示例,那将是很好的.

Gis*_*shu 8

A ControlTemplate用于更改现有控件的外观.因此,如果您不希望按钮看起来呈矩形,则可以定义一个控件模板,使其看起来呈椭圆形或任何不规则形状.这是一种定制'无外观'库存WPF控件的方法; 编写自己的用户控件的替代方法.更多细节

A DataTemplate用于指定如何以可视方式呈现特定类的实例(通常是数据传输对象 - 具有属性的对象).例如,定义a DataTemplate以在显示所有客户的列表框中可视化Customer实例.更多细节