WPF 基础总结(学习建议)

举个简单得例子, 类似造房子, 当然实际上可能非常细, 对应的如下所示:
在此之前, 需要了解的是。
- WPF项目是怎么启动的
- Xaml的结构是怎么样组成, 命名控件定义引用的方法。
知道了如何在Xaml中写代码, 尽管在此之前, 很多经验老道的Winform开发者也发现了, 打开工具箱, WPF的控件仍然像winform一样支持拖拽过来, 到某个位置, 然后在Xaml代码中,
就会生成对应的代码, 按下F4同样会展现出很多属性, 通过设置后, 所见即所得, 双击类似的普通按钮, 同样可以在后台生成事件代码。
WPF兼容了Winform原有的开发方式, 事件模型, 可能唯一的区别就是, 定义这类的事件和属性名称有些不一样, 需要自己去了解。
但是我不建议去直接拖动工具箱来构建应用的方式, 则主要是在Xaml中用手输入, 类似写Hmtl的方式, 因为在后期的开发中, 这将是你主要的开发方式, 首先得适应, 习惯。
新手容易遇到的问题
- 1. 最开始无从下手,但是由于不太熟练, 也没有合适得样例, 来让你进行尝试。
- 2. 心里没有底, 不知道到底是到哪种程度了, 就能够满足基础得开发 (大部分书籍都是1000+页) 如果要从头看下去, 那是不太可能得, 然后就放弃了。
- 3. 没有人引导你学习, 由于都是碎片化得学习, 无法掌握融合得技巧, 做不出东西感觉好像和Winform差不多, 导致半途而废, 甚至还想继续用Winform。
参考方法
- 1. 把winform原有的东西, 用WPF来进行一次一次还原, 这样, 不仅仅让你变得熟练, 还能直观的感受到两种的区别及优劣性, 一旦让你产生了 “卧槽,牛逼”。 那么接下来的工作就会变得很轻松了。
- 2. 先了解, 学习哪些东西, 可以快速让你进行项目开发, 这样, 在实践中, 出现问题, 再针对问题进行解决, 这样后期会发现, 无形之中, 你就掌握了这种技巧。
- 3. 在没人引导如何学习的情况下, 参考一些其他的软件界面, 然后自己尝试实现, 从布局、样式、一些触发器、动画一步一步进行。
可以让你快速学习的一些资料和途径
- 1. WPF编程宝典.pdf (书的内容比较全, 建议可以选择跳过性的阅读 , 不懂得地方再翻)
- 2. 深入浅出.pdf (主要以实例为主)
- 3. 搜索一些简单的入门视频资料或者简单的项目, 文档比较丰富详细的, 进行下手。
练手素材(主要训练布局意识和熟练使用样式模板等)
下面提供一些入门的素材, 你可以参考图中的样式, 用WPF来把他们分别实现, 有些简单, 有些有点难度, 可以根据目前学习的进度选择性演练, 这些都是本人练过手的素材, 所以挑选出来, 比较锻炼熟练度的, 参考如下:






业务层的代码与C# 一致, 所以大部分工作集中在, 如何能够熟练的将界面开发出来。
WPF 基础总结(学习建议)的更多相关文章
- 传智播客--WPF基础视频学习--sender解释(小白内容)
sender是激发该事件的对象,如果用在Button的双击点击事件上的话,就是只当前点击的对象 用例子来说明一下,有两个Button控件,分别为1和2,同时绑定一个Button_Click事件 pri ...
- [WPF系列]从基础起步学习系列计划
引言 WPF技术已经算不什么新技术,一搜一大把关于WPF基础甚至高级的内容.之前工作中一直使用winform所以一直没有深入学习WPF,这次因项目中使用了WPF技术来实现比较酷的展示界面.我在这里只是 ...
- C# WPF基础巩固
时间如流水,只能流去不流回. 学历代表你的过去,能力代表你的现在,学习能力代表你的将来. 学无止境,精益求精. 一.写作目的 做C# WPF开发,无论是工作中即将使用,还是只应付跳槽面试,开发基础是非 ...
- aiku给你们最真心地学习建议--转
aiku给你们最真心地学习建议: 以前我最开始的就搞驱动,后来发现要熟悉hal层,接着就硬着看hal代码,第一次看,很剧痛,慢慢的,看习惯了,就好了,后来发现,搞驱动的人,不懂hal,很多时候就定位 ...
- 韩天峰博客 php基础知识学习记录
http://rango.swoole.com 写好PHP代码真的不容易,给大家几个建议: 慎用全局变量,全局变量不好管理的,会导致你的代码依赖于全局变量,而耦合度太高. 一定不要复制粘贴代码,可重用 ...
- C++学习建议
C++学习建议 C++缺点之一,是相对许多语言复杂,而且难学难精.许多人说学习C语言只需一本K&R<C程序设计语言>即可,但C++书籍却是多不胜数.我是从C进入C++,皆是靠阅读自 ...
- Mybatis基础入门学习
Mybatis基础入门学习 mybatis架构分析 搭建测试mybatis架构 )下载并导入mybatis3.2.7.jar(架构),mysql-connector-java-5.1.7-bin.ja ...
- Linux随笔-鸟哥Linux基础篇学习总结(全)
Linux随笔-鸟哥Linux基础篇学习总结(全) 修改Linux系统语系:LANG-en_US,如果我们想让系统默认的语系变成英文的话我们可以修改系统配置文件:/etc/sysconfig/i18n ...
- Objective-c基础知识学习笔记
Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...
随机推荐
- LinuxShell脚本——认识Shell脚本
LinuxShell脚本——认识Shell脚本 摘要:本文主要介绍了Shell脚本的一些基本知识. 什么是Shell脚本 shell脚本是利用shell的功能所写的一个程序,这个程序是使用纯文本文件, ...
- JVM垃圾回收器原理及使用介绍
JVM垃圾回收器原理及使用介绍 垃圾收集基础 引用计数法(Reference Counting) 标记-清除算法(Mark-Sweep) 复制算法(Copying) 标记-压缩算法(Mark-Comp ...
- FCC---Make a CSS Heartbeat using an Infinite Animation Count----超级好看的心跳,粉色的
Here's one more continuous animation example with the animation-iteration-count property that uses t ...
- 使QScrollArea的背景透明,并且不影响子控件
使QScrollArea的背景透明,乍看很easy,其实却是一个目前百度上百不出来的问题; 最容易想到的,用qss: scrollArea->setStyleSheet("backgr ...
- 【XML】利用Dom4j读取XML文档以及写入XML文档
Dom4j简介 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它的性能 ...
- SparkSql 整合 Hive
SparkSql整合Hive 需要Hive的元数据,hive的元数据存储在Mysql里,sparkSql替换了yarn,不需要启动yarn,需要启动hdfs 首先你得有hive,然后你得有spark, ...
- luoguP1040 加分二叉树
在做各类DP的时候都要思路清晰! #include<cstdio> #include<algorithm> using namespace std; const int N = ...
- lua 15 协程-协同程序
转自:http://www.runoob.com/lua/lua-coroutine.html 什么是协同(coroutine)? Lua 协同程序(coroutine)与线程比较类似:拥有独立的堆栈 ...
- K-消亡的质数-(简单数学)
https://ac.nowcoder.com/acm/contest/3346/K 题意:判断一个素数p是不是某两个数的立方差. 刚看到这道题一时半会都没有什么思路,看了题解恍然大悟,太久没碰数学或 ...
- xargs 用法理解
原来一直不理解,linux shell下 xargs和 管道的区别: 1.管道在linux shell用得比较广泛,管道常常用来组合两个及以上的命令,共同完成一个功能: 比如:我们要统计某一个文件有多 ...
