在模板中使用对象属性

您可以使用模板为控件创建唯一的外观。例如,使用同一模板的每个 RadioButton 控件看起来都完全相同。但是,假设您希望使用某个模板的每个 RadioButton 控件呈现不同颜色,应该怎么办?使用 模板绑定 ,不但可以设计自定义的控件,而且仍然能够在应用程序中加入控件后进行某些更改。

例如,在 Microsoft Expression Blend 附带的 Zune3D 示例中,应用程序底部的单选按钮的形状和突出显示都一样,但它们的颜色不同。通过将模板中某个对象的颜色绑定到使用该模板的 RadioButton 控件的背景色,您可以实现这一点。

Zune3D 示例中经过样式设置的 RadioButton 对象

Ee341447.92a0f9b6-81a7-44c3-9e6d-c17e29df7204(zh-cn,Expression.40).png

下列属性是最常绑定到模板的属性:

属性名称 类型

Background

画笔

Fill

画笔

Stroke

画笔

BorderBrush

画笔

Foreground

画笔

BorderThickness

数字

Width

数字

Height

数字

某些属性(例如 OpacityMaskFontFontSizeLayoutTransformRenderTransform )不必绑定模板。这些属性将自动影响模板中的元素。此外,如果模板中有 ContentPresenter 对象,则 ContentText 属性也不必绑定模板。

在模板中使用对象属性

  1. 创建或打开控件的模板。

    有关详细信息,请参阅创建可重用模板以为系统控件设置样式

  2. 在编辑控件的模板时,请在“对象和时间线”面板中选择其中包含要绑定到模板的属性的对象。

  3. 在“属性”面板中,找到要绑定到模板的属性,单击“高级选项”Ee341447.12e06962-5d8a-480d-a837-e06b84c545bb(zh-cn,Expression.40).png,指向“模板绑定”,然后单击要绑定到模板的属性。

    例如,在 Expression Blend 附带的 Zune3D 示例中的 RadioButton 模板中,内部形状的“Fill”属性绑定到使用该模板的 RadioButton 控件的 Background 属性。

    Ee341447.8ea5510a-4aed-4699-aac1-c7f3f178f5af(zh-cn,Expression.40).png

    在“属性”面板中,属性值周围将出现黄色的范围框,指明该属性值已绑定到模板。

    Ee341447.26f3da48-43af-437f-a064-c981ced5f317(zh-cn,Expression.40).png

  4. 现在,当您绘制使用示例模板的其他对象时,您可以更改绑定到该模板的属性(在前面的示例中为 Background 属性),以影响模板中的 Fill 属性。

    Ee341447.66d08eb4-1962-4e7f-b753-ac9e4b307106(zh-cn,Expression.40).png

删除模板绑定

  1. 在编辑控件的模板时,请在“对象和时间线”面板中选择其中包含已绑定到模板的属性的对象。

  2. 在“属性”面板中,找到已绑定到模板的属性,单击“高级选项”Ee341447.e3343378-f63e-4d8f-9847-97c1a58aadc5(zh-cn,Expression.40).png,然后单击“重置”。

    现在即可将该属性设置为其他值。

另请参阅

概念

设置支持模板的控件的样式
常用 Silverlight 控件的样式提示
WPF 简单样式的样式提示

Microsoft Corporation 版权所有 ⓒ 2011。保留所有权利。