WPF入门教程系列一——基础 一、 前言 最近在学习WPF,学习WPF首先上的是微软的MSDN,然后再搜索了一下网络有关WPF的学习资料。为了温故而知新把学习过程记录下来,以备后
2017-08-11 10:07
926 查看
WPF入门教程系列一——基础
一、 前言 最近在学习WPF,学习WPF首先上的是微软的MSDN,然后再搜索了一下网络有关WPF的学习资料。为了温故而知新把学习过程记录下来,以备后查。这篇主要讲WPF的开发基础,介绍了如何使用Visual Studio 2013创建一个WPF应用程序。
首先说一下学习WPF的基础知识:
1) 要会一门.NET所支持的编程语言。例如C#。
2) 会一点“标准通用标记语言”:WPF窗体程序使用的XAML语言,也属于“标准通用标记语言”的一个分支。如果以前接触过XML、HTML、XHTML、ASP.NET之类的“标准通用标记语言”,对于学习是有所帮助的。
3) 有一定的WinForm或ASP.NET经验,主要是对控件事件的处理要有所了解。
4) 拥有良好的面向对象的思想:在WPF中,经常要灵活运用各种继承关系、多态、重载等。
5) DataBinding要有所了解:Binding是WPF的一大亮点。
6) 对设计模式要有一定的了解:当然是越深入越好了,在实际项目中,各种设计模式经常交融使用。
二、 本系列使用到的工具:
1) 开发环境:Windows 7中文版
2) 开发工具:Visual Studio 2013中文版
3) 数据库:本机SQL Server 2012 Express
4) ORM工具:Entity Framework(实体框架)。
Entity Framework与NHibernate比较:
1)Entity Framework封装性更好,增、删、改、查询更方便
2) Entity Framework使用更方便的Linq to Entity查询,延迟加载(只有在需要时才加载,只加载需要的数据)。
三、WPF开发基础
第一、在装好以上所说的工具之后,打开Visual Studio 2013,选择“菜单—》文件—》新建—》项目”。如下图。
第二、在“新建项目”对话框中选择“WPF应用程序”,修改名称为WpfApp1,然后点击“确定”按钮,便成功创建了一个“WPF应用程序”。新创建的项目所引用的公共类库如下。如下图。(“WPF应用程序”会在“引用”里面自动添加下图中所示的 PresentationCore、PresentationFramework、WindowsBase三大核心程序集)。
第三、WpfApp1项目的生成的文件结构。如下图。
第四、在App.xaml中的“StartupUri”属性可以指定项目运行时的启动窗体。如下图中“StartupUri=”MainWindow.xaml””,还可以定义我们需要的系统资源以及引入程序集等。如下图。
第五、在MainWindow.xaml的设计窗体中我们可以修改Title。还可以设置MainWindow的属性和添加事件。完成了这些设置以后,我们就可以对窗体添加内容了,如下图。我在这个窗体中添加了一个ListView、两个WrapPanel、两个Button等。
第六、在WPF的xmal文件中还可以添加如下资源。如下图。
四、小结
WPF应用程序的创建除了使用Visual Studio之外,还可以使用Expression Blend。
谈到学习WPF的开发,就必须要学习MVVM,学习MVVM,就要首先了解MVC、MVP等概念。
我自己做过WinForm、ASP.NET等使用各类.NET技术的项目,虽然微软的技术一直在进步、变化,但是最基本的东西都没有变,例如数据库的访问,文件的读写、日志处理,程序中异常的处理、报表、打印、性能的优化、友好的界面。
相关文章推荐
- WPF学习记录-布局[摘抄自博客园(xiepeixing<WPF布局该如何选用panel>与(DotNet菜园<WPF入门教程系列七——布局之WrapPanel与StackPanel(二)>))]
- WPF入门教程系列一——基础
- Python学习入门基础教程(learning Python)--5.1 Python下文件处理基本过程
- 【WPF学习笔记】之如何把数据库里的值读取出来然后显示在页面上:动画系列之(六)(评论处有学习资料及源码)
- Highcharts入门+Highcharts基础教程,【非常值得学习的资料】
- 最近学习过程中遇到的问题,记录一下
- Java Media Framework 基础教程(学习JMF中,看到好的中文教程,在这里记录下来)
- WPF入门教程系列一——基础
- 找到网络方面的学习资料,记录一下
- Python学习入门基础教程(learning Python)--5.7 Python文件数据记录存储与处理
- Android基础入门教程——7.6.1 Socket学习网络基础准备
- WPF入门教程系列一——基础
- 最近开始学习ubuntu,想记录一下学习过程,也为在学习的朋友提供一个参考
- oracle 学习入门系列(1):基础,存储过程
- WPF入门教程系列一——基础
- 【J2me 2D 游戏开发系列】◣Himi游戏开发启蒙教程◢Java零基础学习J2me游戏开发全过程!
- Java Media Framework 基础教程(学习JMF中,看到好的中文教程,在这里记录下来)
- 最近无意中看到一个讲解spring mvc的系列,从源码的角度讲解,特记录下来,供以后反复学习
- Android基础入门教程——7.6.1 Socket学习网络基础准备
- 吾日三省吾身系列,大部分内容来自互联网,文章内容少部分原创,仅为了记录学习过程