创建依赖项属性而不继承DependencyObject

时间:2010-12-22 17:17:37

标签: .net wpf data-binding dependency-properties

我已经为类添加了一个基本的自动属性,并且我希望只要树视图的SelectedItem发生更改就会设置该属性。所以我将它添加到我的XAML中的某个Resources

<myns:MyClass x:Key="MyClassResource" MyProperty="{Binding ElementName=treeView, Path=SelectedItem, Mode=OneWay}" />

但是当我尝试运行它时,我得到一个例外:'绑定只能在依赖属性上设置'。现在,依赖项属性需要继承DependencyObject,但MyClass 已经继承了一个类!我不需要所有双向绑定的东西,我想要的是,只要SelectedItem发生更改,该值就会被复制到MyProperty

我怎样才能以简单的方式做到这一点?

1 个答案:

答案 0 :(得分:1)

你可以使MyProperty成为一个普通的CLR属性,在你的treeView的SelectedItemproperty上定义你的绑定,将绑定模式设置为OneWayToSource,这将导致它“更改”你的类上的MyProperty属性。