先推荐下猛哥(刘铁猛)的书籍  《深入浅出WPF》.

一直以来,完美的用户体验是桌面应用程序和Web应用程序中的一大障碍。许多开发人员绞尽脑汁将界面设计得美观炫丽些、互

动感强些,但费了九牛二虎之力, 还是差强人意。由于技术上的限制,Web 应用程序无法提供与桌面应用程序同样丰富的用户体

验。而随着电脑与每个人的生活、工作变得密不可分,人们对桌面应用程序的要求也不断提高。永不满足的人们 要求桌面应用程序能

够播放视频、运行动画、采用二维或三维图形,以及调用不同的文档(敲黑板!!画重点!)。

想实现这些吗?那就用WPF!

1.首先,更改一个错误观念,能使用WPF开发管理系统吗?

引用猛哥的话:“使用WPF开发管理系统这个提法是不对的”,

因为WPF是(Windows Presentation Foundation )的简称,即是用来编写表现层的技术和工具。

主要负责将程序展示给用户看,类似的有Windows Forms、Asp.NET.Silverlight等等。

如果是编写业务逻辑层,相关技术是WCF和WF。

2.什么是WPF?

首先,如果你要做桌面应用程序,那可能就要学习桌面程序相关的界面编码语言(winForm、Asp.NET.Silverlight),

如果要做网页端程序,又要学习网页程序的编码语言(html+css+JS),

如果有一套编码,桌面应用程序与Web应用程序均可运用,那是不是特别心动呢?

或者说,你想不想桌面程序也能有3D动画高大上的效果?没错,这就是WPF的魅力和用处。

WPF是微软新一代图形系统,运行 在.NET Framework 3.0架构下,为用户界面、2D/3D 图形、文档和媒体提供了统一的描述和

操作方法

2.   WPF有什么优势?

说到WPF的优势,我们首先了解下事件驱动。官方的话说,即事件-订阅-事件处理器,混在一起使用。

Windows Forms采用的就是事件驱动,通俗的说就是给控件绑定事件,然后控件发生各种状态变化或者其他的事件后就触发,然后事件对应的方法就会激活。这样子激活的方法里面常常就会编写业务逻辑和界面逻辑,在事件驱动下,数据是静态的。

对比Windows Forms的事件驱动,WPF采用数据驱动。

通俗的说,就是后台绑定的数据改变了,界面上的数据会自动刷新。不需要使用事件监控着,且之前的WindowsFroms,

个人深有体会,虽方便快捷的绑定事件,但是往往会出现界面逻辑和业务逻辑弄混到一起,所以遇到Bug的时候,寻找那叫一个累。

WPF通过数据驱动,当数据变化的时候,由数据发起,通知控件变化,这样控件触发的事件就会被弱化,减少了界面逻辑的编写,

从而实现界面逻辑和业务逻辑分离

3分钟搞懂什么是WPF。的更多相关文章

  1. c#代码 天气接口 一分钟搞懂你的博客为什么没人看 看完python这段爬虫代码,java流泪了c#沉默了 图片二进制转换与存入数据库相关 C#7.0--引用返回值和引用局部变量 JS直接调用C#后台方法(ajax调用) Linq To Json SqlServer 递归查询

    天气预报的程序.程序并不难. 看到这个需求第一个想法就是只要找到合适天气预报接口一切都是小意思,说干就干,立马跟学生沟通价格. ​ ​不过谈报价的过程中,差点没让我一口老血喷键盘上,话说我们程序猿的人 ...

  2. 五分钟搞懂POM设计模式

    转载请注明出处️ 作者:IT小学生蔡坨坨 原文链接:五分钟搞懂POM设计模式 大家好,我是IT小学生蔡坨坨. 今天,我们来聊聊Web UI自动化测试中的POM设计模式. 为什么要用POM设计模式 前期 ...

  3. 五分钟搞懂Vuex

    这段时间一直在用vue写项目,vuex在项目中也会依葫芦画瓢使用,但是总有一种朦朦胧胧的感觉.于是决定彻底搞懂它. 看了一下午的官方文档,以及资料,才发现vuex so easy! 作为一个圈子中的人 ...

  4. 十分钟搞懂什么是CGI

    原文:CGI Made Really Easy,在翻译的过程中,我增加了一些我在学习过程中找到的更合适的资料,和自己的一些理解.不能算是严格的翻译文章,应该算是我的看这篇文章的过程的随笔吧. CGI真 ...

  5. 十分钟搞懂什么是CGI(转)

    原文:CGI Made Really Easy,在翻译的过程中,我增加了一些我在学习过程中找到的更合适的资料,和自己的一些理解.不能算是严格的翻译文章,应该算是我的看这篇文章的过程的随笔吧. CGI真 ...

  6. 两分钟搞懂UiAutomator、UiAutomator2、Bootstrap的关系

    很多同学经过一段时间的学习之后都明白了Appium的基本原理,但是越学习到后面发现出现的很多陌生名词无法弄清楚其具体作用,今天这篇文章的目的就是为了让大家来弄懂三个高频名词:UiAutomator.U ...

  7. 五分钟搞懂什么是B-树(全程图解)【转】

    前戏 我们大家都知道动态查找树能够提高查找效率,比如:二叉查找树,平衡二叉查找树,红黑树.他们查找效率的时间复杂度O(log2n),跟树的深度有关系,那么怎么样才能提高效率呢?当然最快捷的方式就是减少 ...

  8. 五分钟搞懂MySQL索引下推

    大家好,我是老三,今天分享一个小知识点--索引下推. 如果你在面试中,听到MySQL5.6"."索引优化" 之类的词语,你就要立马get到,这个问的是"索引下推 ...

  9. 10分钟搞懂Tensorflow 逻辑回归实现手写识别

    1. Tensorflow 逻辑回归实现手写识别 1.1. 逻辑回归原理 1.1.1. 逻辑回归 1.1.2. 损失函数 1.2. 实例:手写识别系统 1.1. 逻辑回归原理 1.1.1. 逻辑回归 ...

随机推荐

  1. java中产品分类返回给前台页面 后台数据组装

    public ResultBean getSpfl(Integer yyb) { ResultBean res = new ResultBean(); try { JSONArray data = n ...

  2. hive向es推送数据

    第一步:首先要保证网络是通的,很多公司里子网遍布,要和运维和工程侧同事确认好网络是通的,es的地址可以通过curl es地址的方式测试一下. 第二步:下载需要的jar包,必须的是es-hadoop的包 ...

  3. git 只提交部分文件 拉取pull远程仓库

    正常的团队开发中,在提交代码push之前要先pull拉取远程仓库的代码.而拉取pull操作需要先commit修改的文件才能成功. 那么问题来了,当我只想push提交部分代码的时候,同样需要pull拉取 ...

  4. JDK下载地址 Oracle JDK下载 地址 (已解决)

    现在JDK开始收费了 Oracle官方对JDK的管理也变得严格了,现在想要在官网下载jdk需要先注册Oracle账号,这倒是小事但是网页反应慢注册填写内容复杂导致很多人不想注册. 不过有的人提供了公开 ...

  5. 万字概览 Java 虚拟机

    为什么要学习 JVM 在很多 Java 程序员的开发生涯里,JVM 一直是黑盒子一般的存在,大家只知道运行 Java 程序需要依靠 JVM,千篇一律的配置几个类似 -Xms 和 -Xmx 的参数,可能 ...

  6. String StringBuffer StringBuilder之间的区别

    String:

  7. ES6 浅谈Reflect

    Reflect 属于一个静态类,不能通过new的方法去创建实例,只能调用静态类中的一些静态方法,Reflect内部封装了一系列对对象的底层操作, Reflect 成员方法就是Proxy处理对象的默认实 ...

  8. Modbus仿真器 Modbus Poll 和Modbus Slave详细图文教程

    Modbus Poll 是Witte Software公司开发的的Modbus主机仿真器,用于测试和调试Modbus从设备.软件支持ModbusRTU.ASCII.TCP/IP协议.支持多设备监控,可 ...

  9. windows端口占用

    原文链接http://zhhll.icu/2020/04/08/windows/windows%E4%B9%8B%E7%AB%AF%E5%8F%A3%E5%8D%A0%E7%94%A8/ 1.查看当前 ...

  10. 哎,这让人抠脑壳的 LFU。

    这是why哥的第 83 篇原创文章 让人抠脑壳的 LFU 前几天在某APP看到了这样的一个讨论: 看到一个有点意思的评论: LFU 是真的难,脑壳都给我抠疼了. 如果说 LRU 是 Easy 模式的话 ...