在WPF中,控件模板和数据模板有什么区别?

4
有人能详细解释一下WPF中ControlTemplate和DataTemplate的区别吗?
在自定义控件时应该使用哪一个?例如,一个可能包含图像和文本框的StackPanel。
有些情况下似乎会令人感到困惑,比如使用“Content”属性定义自定义控件。
如果能提供每个模板在不同场景下的使用示例就太好了。

3
可能是重复的问题,与https://dev59.com/UXM_5IYBdhLWcg3whzrx相似。 - Matt Hamilton
1个回答

10
一个 ControlTemplate 用于更改现有控件的外观。因此,如果您不希望您的按钮呈矩形外观,您可以定义一个控件模板,使它们呈椭圆形或任何不规则形状。这是一种自定义“无外观”WPF库存控件的方法;也是编写自己的用户控件的替代方法。 更多细节 DataTemplate 用于指定如何在视觉上呈现特定类的实例(通常是数据传输对象 - 具有属性的对象)。例如,定义一个 DataTemplate 来可视化列表框中显示所有客户的客户实例。 更多细节

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接