码迷,mamicode.com
首页 > 其他好文 > 详细

TemplateBinding和Binding的区别

时间:2017-08-24 10:22:53      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:control   ati   highlight   source   arp   parent   bsp   bin   convert   

定义                                                

TemplateBinding是为了某个特定场景优化出来的数据绑定版本--需要把ControlTemplate里面的某个Property绑定到应用该ControlTemplate的控件的对应Property上。

用法                                                           

<object property="{TemplateBinding targetProperty}" .../>

在模板或样式中用Setter属性的用法:
<Setter Property="propertyName" Value="{TemplateBinding targetProperty}" .../>

  

区别                                                             

1. Binding比TemplateBinding更加灵活强大,但是开销也更大。TemplateBinding在使用场景有限制,但是效率较高。Template非常类似{Binding RelativeSource={RelativeSource TemplatedParent}}构造的Binding。
2. TemplateBinding同样允许我们定义Converter和ConverterParameter,在一定程度上加强了TemplateBinding的应用功能和范围.
3. 最重要的区别:TemplateBinding仅仅支持单向的数据绑定,从应用Template的控件到Template(from templated control to template)。如果我们需要反向或者双向的绑定,唯一的选择就是应用Binding和RelativeSource。

 

TemplateBinding和Binding的区别

标签:control   ati   highlight   source   arp   parent   bsp   bin   convert   

原文地址:http://www.cnblogs.com/callyblog/p/7421299.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!