在模板中使用对象属性
您可以使用模板为控件创建唯一的外观。例如,使用同一模板的每个 RadioButton 控件看起来都完全相同。但是,假设您希望使用某个模板的每个 RadioButton 控件呈现不同颜色,应该怎么办?使用 模板绑定 ,不但可以设计自定义的控件,而且仍然能够在应用程序中加入控件后进行某些更改。
例如,在 Microsoft Expression Blend 附带的 Zune3D 示例中,应用程序底部的单选按钮的形状和突出显示都一样,但它们的颜色不同。通过将模板中某个对象的颜色绑定到使用该模板的 RadioButton 控件的背景色,您可以实现这一点。
Zune3D 示例中经过样式设置的 RadioButton 对象
下列属性是最常绑定到模板的属性:
属性名称 | 类型 |
---|---|
Background |
画笔 |
Fill |
画笔 |
Stroke |
画笔 |
BorderBrush |
画笔 |
Foreground |
画笔 |
BorderThickness |
数字 |
Width |
数字 |
Height |
数字 |
某些属性(例如 OpacityMask 、 Font 、 FontSize 、 LayoutTransform 或 RenderTransform )不必绑定模板。这些属性将自动影响模板中的元素。此外,如果模板中有 ContentPresenter 对象,则 Content 和 Text 属性也不必绑定模板。
在模板中使用对象属性
创建或打开控件的模板。
有关详细信息,请参阅创建可重用模板以为系统控件设置样式。
在编辑控件的模板时,请在“对象和时间线”面板中选择其中包含要绑定到模板的属性的对象。
在“属性”面板中,找到要绑定到模板的属性,单击“高级选项”,指向“模板绑定”,然后单击要绑定到模板的属性。
例如,在 Expression Blend 附带的 Zune3D 示例中的 RadioButton 模板中,内部形状的“Fill”属性绑定到使用该模板的 RadioButton 控件的 Background 属性。
在“属性”面板中,属性值周围将出现黄色的范围框,指明该属性值已绑定到模板。
现在,当您绘制使用示例模板的其他对象时,您可以更改绑定到该模板的属性(在前面的示例中为 Background 属性),以影响模板中的 Fill 属性。
删除模板绑定
在编辑控件的模板时,请在“对象和时间线”面板中选择其中包含已绑定到模板的属性的对象。
在“属性”面板中,找到已绑定到模板的属性,单击“高级选项”,然后单击“重置”。
现在即可将该属性设置为其他值。
另请参阅
概念
设置支持模板的控件的样式
常用 Silverlight 控件的样式提示
WPF 简单样式的样式提示
Microsoft Corporation 版权所有 ⓒ 2011。保留所有权利。