将dependencyconperty中的dependencyproperty绑定到其datacontext

时间:2012-07-18 13:50:56

标签: wpf binding user-controls dependency-properties datacontext

我有一个带有一个依赖属性的UserControl。此UserControl在已将ViewModel作为DataContext的视图中使用。 我目前正在将我的顶级datacontext中的一个属性绑定到dependencyproperty。但是现在我想将相同的dependencyproperty绑定到UserControl的Datacontext中的属性。 最后,我希望我的DataContext的2个属性之间存在绑定 - 视图和用户控件。

我怎么能得到这个?

1 个答案:

答案 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

以上是许多类型的绑定。你可以使用一个符合你要求的。我希望这会有所帮助。