标签: c# wpf user-interface properties dependency-properties
我有一个包含我逻辑的库项目,我不希望它依赖于WPF,问题是:
有没有办法将属性扩展为依赖属性?或者我是否真的必须重写 ALL 我的属性和变量?!这听起来有点牵强和超现实,但我认为情况可能如此,所以我将它留给你们,因为谷歌甚至不理解我想要的东西(不相关的结果)。
顺便说一句,我读到并听到WPF的一个主要概念是将UI与逻辑分离,但它迫使您将属性(逻辑)转换为依赖属性(UI)。这有点荒谬,不是吗?
答案 0 :(得分:3)
嗯,WPF可以使你的模型对象的绑定工作开箱即用(有一些限制)。检查this link。但是,作为链接通知,可能会影响应用程序的内存消耗。
话虽如此,模型对象的属性不需要是在WPF绑定系统中使用的依赖属性。它们只需要实现INotifyPropertyChanged,它是在System程序集的System.ComponentModel命名空间中定义的。这将要求对象中属性的声明进行一些更改。
对MVVM模式和INotifyPropertyChanged接口进行一些研究。 以下是一些可以帮助您入门的链接: link link link link