自定义控件开发全解析
1. 双向绑定的实现
在进行数据绑定时, TemplateBinding 标记扩展仅支持单向绑定,且没有 Mode 属性来修改绑定模式。若需要绑定的控件更新其绑定的属性(即需要双向绑定),则不能使用 TemplateBinding 标记扩展。
例如,若之前示例中的 TextBlock 控件替换为 TextBox (用户可修改绑定值), TemplateBinding 标记扩展就无法根据用户输入更新绑定值。
为实现绑定属性的更新,可结合使用 Binding 标记扩展和 RelativeSource 标记扩展。 Binding 标记扩展可实现双向绑定, RelativeSource 标记扩展可绑定到模板化父级。示例代码如下:
<TextBox Text="{Binding HeaderText, Mode=TwoWay,
RelativeSource={RelativeSource TemplatedParent}}" />
2. 拆分 generic.xaml 文件
当向控件库中添加更多控件时, generic.xaml
超级会员免费看
订阅专栏 解锁全文
665

被折叠的 条评论
为什么被折叠?



