C# 如何在UserControl中公开嵌套控件的多个DependencyProperties(同名)?

C# 如何在UserControl中公开嵌套控件的多个DependencyProperties(同名)?,c#,wpf,binding,nested,dependency-properties,C#,Wpf,Binding,Nested,Dependency Properties,我试着解决几乎相同的问题:“ 不同之处在于,我有不同(2个或更多)嵌套的控件,具有相同的类型。我的目标是使嵌套的dependencProperties可绑定。我面临的主要问题是,Binding不使用CLR属性的Getter和Setter,而是使用registerrddependencProperty的String。使用2个(或更多)嵌套的控件时,我面临命名冲突 为了说明我的问题,这里使用外部UserControl的代码: public partial class OuterControl : U

我试着解决几乎相同的问题:“

不同之处在于,我有不同(2个或更多)嵌套的
控件
,具有相同的
类型
。我的目标是使嵌套的
dependencProperties
可绑定。我面临的主要问题是,
Binding
不使用
CLR属性的
Getter
Setter
,而是使用registerrd
dependencProperty的
String
。使用2个(或更多)嵌套的
控件时,我面临命名冲突

为了说明我的问题,这里使用外部UserControl的代码:

public partial class OuterControl : UserControl
{
    public OuterControl()
    {
        InitializeComponent();
    }

    public Visibility PropOfInnerControl
    {
        get { return (Visibility)GetValue(PropOfInnerControlProperty); }
        set { SetValue(PropOfInnerControlProperty, value); }
    }

    // Using a DependencyProperty as the backing store for UserControl2Visibility.  This enables animation, styling, binding, etc...
    public static readonly DependencyProperty PropOfInnerControlProperty =
        InnerControl.PropOfInnerControlProperty.AddOwner(typeof(OuterControl), new FrameworkPropertyMetadata(MyVisibilityPropertyChanged));            

    private static void MyVisibilityPropertyChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e)
    {
        var OuterControl = obj as OuterControl;
        OuterControl.InnerControl1.PropOfInnerControl = (Visibility)e.NewValue;
    }
}
如果不清楚:在我的示例中,
InnerControl1
dependencProperty
称为
PropOfInnerControlProperty
,并注册在
字符串“PropOfInnerControl”

在我的示例中,使用
InnerControl1
进行绑定很好。但是我不知道如何解决
InnerControl2
的同样问题