我对WPF的学习感到困惑。我看到 ControlTemplate 用于确定列表框中每个项目的外观。这不是 ItemTemplate 在列表框中的用途吗?有什么不同?
ControlTemplate 允许您更改现有控件的外观和感觉,例如,使普通的日常按钮看起来像 Vista 的任务栏闪亮玻璃按钮,或使选项卡控件看起来像新的 Office 2007 功能区。
这个想法是,控件仅包含行为,而 ControlTemplate 包含外观和感觉 - 因此按钮是“您单击的东西”而不是“可以单击的具有某种 3D 效果的矩形”。
您可以替换列表框的控件模板以获得类似带有圆角或自定义滚动条的列表框之类的内容。
另一方面,DataTemplate(ItemTemplate 是 DataTemplate 类型的属性)让您控制数据行在列表框(和其他类似控件)内的显示方式,数据模板用于指定诸如“显示姓氏,而不是逗号和名字 - 姓氏应为粗体,如果名字以 A" 开头,则应为绿色。
为了完整起见,还有一个 ItemsPanelTemplate 类,用于更改列表框的内部布局 - Charles Petzold 的 WPF 书中有一个使用它使普通列表框以圆圈形式显示其项目的示例。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)