首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
【学习笔记】WPF-01:前言
返回列表
发新帖
【学习笔记】WPF-01:前言
[复制链接]
发表于 2022-6-20 09:41:52
|
显示全部楼层
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
前言
1.基本概念
WPF
(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,由 .NET Framework 3.0 开始引入,与WCF (Windows Communication Foundation)及 WF(Windows Workflow Foundation)并行为新一代 Windows操作系统以及 WinFX 的三个重大应用程序开发类库。
2.
功能
定位
三层架构
对于一般程序而言通常包含3层架构:
数据层
、
业务逻辑层
、
表现层
,这三层结构的
功能
大致如下:
数据层:
存储
数据。多由
数据库
构成
业务逻辑层:
根据需求实现业务
功能
。通过一组Service向表现层公开功能,通过DAL(Data Access Layer)与数据层进行交互
表现层:
向用户展示数据。通常被称为客户端程序
WPF
的功能是用来编写应用程序的
表现层
扩展:
业务逻辑层
——
WCF
、
WF
;
数据访问层
——
WCF DataService
、
WCF RIA Service
3.功能结构
MVVM
模式
表示层程序一般包括以下四种功能性
代码
数据模型:现实世界中事物和逻辑的抽象。
业务逻辑:数据模型之间的关系与交互。
用户界面:由控件构成的、与用户进行交互的界面,用于把数据展示给用户并响应用户的输入。
界面逻辑:控件与控制之间的关系与交互。
在WPF出现之前,Windows Forms、ASP.NET(Web Forms)等技术均使用“
事件驱动
”理念,界面逻辑和业务逻辑容易纠缠在一起,造成
代码
结构复杂难懂、bug难以排除。而WPF技术则是“
数据驱动
”。
事件驱动:
用户每进行一个操作用会激发程序发生一个事件,事件发生后,用于响应事件的事件处理器就会执行。事件处理器是一个方法(函数),在这个方法中,程序员可以处理数据或调用别的方法,这样,程序就在事件的驱动下向前执行了。事件驱动的数据是静态的、被动的;界面控件是主动的、界面逻辑与业务逻辑之间的桥梁是事件。
数据驱动:
当数据发生变化时,会主动通知界面控件、推动控件展示最新的数据;同时,用户对控件的操作会直接送达数据。在数据驱动理念中,数据占据主动地位、控件和控件事件被弱化(控件事件一般只参与界面逻辑,不再染指业务逻辑,使程序复杂度得到有效控制)。数据与界面之间的桥梁是数据关联(DataBinding),通过这个桥梁,数据可以流向界面,再从界面流回数据源。
在WPF中,把能够展示数据、响应用户操作的UI元素称为
控件
(Control)。控件所展示的数据称为控件的“数据内容”;控件在响应用户的操作后会执行自己的一些方法或以事件(Event)的形式通知应用程序(程序员可以决定如何处理这些事件),称为
控件的“行为”
或“算法内容”。
4.技术结构
WPF
与
Silverlight
的技术对比:
技术项目在WPF中在Silverlight中XAML语言完整完整控件完整完整布局完整完整Binding完整基本完整依赖属性完整基本完整路由事件完整简化命令完整无资源完整完整控件模板完整基本完整数据模板完整基本完整绘图完整完整2D/3D动画完整简化类比于Web前端,XAML可以看做HTML+CSS,用作用户界面的编写。业务逻辑的具体实现是通过C#编写,类比于JavaScript。另外,WPF中的技术点与
Vue
是极其相似的,可以对比学习。
个人小结
WPF是一个用来编写
表现层
的工具,使用
数据驱动
的理念,采用
MVVM
模式,UI界面与业务逻辑分离。
回复
使用道具
举报
返回列表
立山
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表