我有一个带有一个依赖属性的UserControl。此UserControl在已将ViewModel作为DataContext的视图中使用。 我目前正在将我的顶级datacontext中的一个属性绑定到dependencyproperty。但是现在我想将相同的dependencyproperty绑定到UserControl的Datacontext中的属性。 最后,我希望我的DataContext的2个属性之间存在绑定 - 视图和用户控件。
我怎么能得到这个?
答案 0 :(得分:2)
尝试以下一种绑定方式
// UserControl DataContext={Binding SomeDataContext } Suppose here UserControl starts
<!--Bind Height with Width of SameControl-->
<TextBox Name="textBox1" Height="{Binding Width, RelativeSource={RelativeSource Mode=Self}}"/>
<!--Bind Height to the VMProperty in the DataContext of Window-->
<TextBox Name="textBox2" Height="{Binding DataContext.VMProperty, RelativeSource={RelativeSource AncestorType={x:Type Window}}}"/>
<!--Bind Height with the Width of first textbox-->
<TextBox Name="textBox3" Height="{Binding Width, ElementName=textBox1}"/>
<!--bind Height with the UserControlDataContextProperty in UserControl DataContext-->
<TextBox Name="textBox4" Height="{Binding UserControlDataContextProperty}"/>
//Here UserControl ends
以上是许多类型的绑定。你可以使用一个符合你要求的。我希望这会有所帮助。