gpt4 book ai didi

wpf - 非静态依赖属性

转载 作者:行者123 更新时间:2023-12-04 20:55:48 24 4
gpt4 key购买 nike

我有什么理由可以(或不应该)将依赖属性声明为非静态的?

我需要制作一个具有双向可绑定(bind)属性的接口(interface)。 INotifyPropertyChanged 在接收端似乎有点麻烦,因为它依赖于字符串标识符。

最佳答案

Is there any reason why I could (or should) not declare dependency properties as non-static?



是的。

WPF 中的依赖属性机制使用按类型而不是按实例指定的存储机制。 DPs 的设计依赖于它们是静态定义的,而不是每个实例。如果您在实例上定义它们,它们将无法正常工作。

这样做部分是为了允许继承属性,但也允许您在对象上指定很多属性,而无需为每个实例使用大量内存。

如果要创建具有双向可绑定(bind)属性的接口(interface),通常您希望为您的类使用 INotifyPropertyChanged,并使用用户界面元素上的依赖属性来处理绑定(bind)。 INotifyPropertyChanged 是正确的机制。如果主要提示是字符串标识符,您可以 work around them using expression trees .

关于wpf - 非静态依赖属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3660696/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com