如何开发一款便捷美观的WPF界面
C#+WPF+MVVM+导航路由+MEF(一)
大家好!这篇文章是我在从事6年上位机开发,3年WPF开发经验后总结的一套比较实用的WPF开发方案,这篇文章比较适合初学者入门搭建属于自己的一个WPF上位机系统软件MVVM模式,初步的集成了日志,缓存,导航路由和MEF懒加载来实现插件之间的解耦。
走进WPF
WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。
wpf支持传统winfrom的编程手法,就是在页面的cs文件下直接写业务逻辑,但是这样做,很明显。无法发挥出wpf其独特的优势。就是用MVVM模式编程。实现前后端业务层面的分层解耦。
MVVM模式
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。
例如MVC最直观的就是ASP.net的网页编程框架。
MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property