Wpf 自定义控件和从属属性

Wpf 自定义控件和从属属性,wpf,binding,controls,Wpf,Binding,Controls,我创建了一个自定义控件,该控件在内部使用BindingList跟踪某些自定义网格中显示的帐户对象。我想向控件添加一个dependencProperty,它将公开set/get for List,这将允许我在控件和数据模型之间进行双向绑定。我希望能够将该列表设置为初始化我的控件,并从BindingList的更新中获取更新。简而言之,我需要以某种方式提供DependencyProperty列表和内部BindingList列表之间的转换,反之亦然(取决于控件最初是从数据源绑定的,还是根据控件中Bind

我创建了一个自定义控件,该控件在内部使用BindingList跟踪某些自定义网格中显示的帐户对象。我想向控件添加一个dependencProperty,它将公开set/get for List,这将允许我在控件和数据模型之间进行双向绑定。我希望能够将该列表设置为初始化我的控件,并从BindingList的更新中获取更新。简而言之,我需要以某种方式提供DependencyProperty列表和内部BindingList列表之间的转换,反之亦然(取决于控件最初是从数据源绑定的,还是根据控件中BindingList的更改更新数据源)


我在web上找到的示例涉及直接使用DependencyProperty上设置的列表的控件-在我的示例中,我希望具有indirecion级别,因为BindingList不必与DependencyProperty中的列表相同。

为什么BindingList不相同?C#不是这样工作的:

上述定义的含义是将属性设置为值,设置后应该是相同的


虽然您可以在普通C#类的setter中创建一个有趣的逻辑,DependencyProperty是一个预定义的概念,在这里,您将无法偏离正常状态。

我在内部使用的绑定列表与我试图公开的DependencyProperty上的列表不同,因为我不想将内部实现公开给外部属性

在复杂控件中,可能有多个网格等需要有自己的绑定列表来保存数据。我的从属财产将用于: 1) 使用一些数据初始化自定义控件
2) 根据用户输入将新列表设置回模型。

您能给我们举个例子吗?
myControl1.List = list1;