这是我在WPF中开发复杂控件时经常遇到的问题。
我想将一些属性绑定到多个父级。
我目前正在将它与 RelativeSource 和 TemplatedParent 一起使用:
Value="{Binding PropertyToBind, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}"
但是有了这个,你可以绑定到直接父级,我有4个级别......所以我做了4个绑定,最终绑定到好的值。
我无法删除我的 4 级对象,它们是复杂的控件...
例如,我的第一级是我的操纵杆控制。在我的操纵杆中,我有一个滑块控件(第二级)来上下移动。在我的滑块中,我有一个按钮(第 3 级)。在我的按钮中,我有一个文本(第 4 级),我想将它绑定到我的第 1 级(操纵杆)中的属性。
我所做的是将我的文本绑定到按钮中的一个属性,然后我将按钮的属性绑定到滑块中的属性,等等.. 到操纵杆。有时,我需要创建自定义控件(添加了可以绑定的属性)。
这不是我的场景,这只是一个例子(是的,在这个我们可能会删除一些级别,但不是我的)我不想回答:删除这个或这个对象......
有没有办法直接绑定到多个级别?每个级别都是 Style 中的一个 ControlTemplate。
我正在使用 WPF 4、.NET 4.0、Blend 4、Visual Studio 2010