第17章 控件模版(2)——模版绑定

一、模版绑定概述

通过第17章 控件模版(1)——模版的创建与使用可以看出为按钮设置Padding属性没有作用,这时我们就需要在模版中特殊注意该属性,这个特殊注意指的就是模版绑定。

模版绑定:指模版内的值是从使用模版的控件获取。

二、改进模版代码

<Window.Resources>
    <ControlTemplate x:Key="btn_Template" TargetType="{x:Type Button}">
        <Border BorderBrush="Orange" BorderThickness="2" CornerRadius="15" Background="YellowGreen" TextBlock.Foreground="White" x:Name="Border">
            <ContentPresenter Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" Margin="{TemplateBinding Padding}"/>
        </Border>
    </ControlTemplate>
</Window.Resources>
三、运行效果

四、特殊说明

①模版绑定与普通数据绑定类似,但它的量级更轻,因为它是专门针对在控件模版中使用而设计的。它只支持单向数据绑定,即仅能从控件获取值到模版。如果遇到模版绑定不生效的情形,可改用具有完整功能的数据绑定。

②预计需要哪些模版绑定的唯一方法是检查默认控件模版,通过Blend去查看标准的控件模版即可。当然也可以通过设置控件属性看其是否起作用来决定是否使用模版绑定。

③在许多情况下,可不考虑模版绑定。实际上,如果不准备使用属性或者不希望修改模版就不必绑定属性。例如,本例中的文本字体颜色为白色,后期不需要变更其它颜色,就可不考虑模版绑定了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值