Binding.RelativeSource 属性

Binding.RelativeSource 属性说明:

通过指定绑定源相对于绑定目标的位置,获取或设置绑定源。

 

 

 

此属性通常用于将对象的某个属性绑定到该对象的另一个属性,或用于在样式或模板中定义绑定。

 

默认情况下,如果已设置了 DataContext 属性,则绑定会继承该属性所指定的数据上下文。但是,RelativeSource 属性是一种可以显式设置 Binding 的源和重写继承的数据上下文的方式。有关更多信息,请参见如何:指定绑定源

 

此外,使用 Binding.ElementName  Binding.Source 属性还可以显式设置绑定源。但是,对于每个绑定,只能设置 ElementNameSource  RelativeSource 这三个属性中的一个,否则可能发生冲突。如果存在绑定源冲突,则此属性将引发异常。

 

 

RelativeSource的两个重要属性:

       AncestorLevel属性指的是以Binding目标控件为起点的层级偏移量,AncestorType属性告诉Binding寻找哪个类型的对象作为自己的源,不是这个类型的对象会被跳过。如:下面的XAML示例代码:

    <TextBox   Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorLevel=1, AncestorType={x:Type Grid}}, Path=Name}"  />

转载于:https://www.cnblogs.com/changbaishan/p/3490710.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值