1、WPF简介 WPF:WPF即Windows Presentation Foundation,翻译为中文“Windows呈现基本”,是微软推出的基于Windows Vista的用户界面框架,属于.NET Framework 3.0的一部分。它供给了统一的编程模型、语言和框架,真正做到了分离界面设计人员与研发人员之间的工作;同期它供给了全新的多媒介交互用户图形界面。
2、WPF特点
1、统一的编程模型
WPF供给的编程模型统一普通控件、语音、视频、文档3D等技术,这些媒介类型能够统一协调工作,降低了咱们的学习成本。
2、与分辨率无关
WPF是基于矢量绘图的,因此呢它产生的图形界面能够支持各样分辨率的表示设备,而不会像WinForm等在高分辨率的现实设备上产生锯齿。
3、硬件加速技术
WPF是基于Direct3D创建。在WPF应用程序中无论是2D还是3D的图形或文字内容都会被转换为3D三角形、材质和其他Direct3D对象,并由硬件负责渲染,因此呢它能够更好的利用系统的图像处理单元GPU,从硬件加速中得到好处。
4、声明式编程
WPF引入一种新的XAML语言(Extensible Application Markup Language)来研发界面。运用XAML语言将界面研发以及后台规律研发很好的掰开,降低了前后台研发的耦合度,运用户界面设计师与程序研发者能更好的合作,降低守护和更新的成本。
5、易于安排 WPF除了能够运用传统的Windows Installer以及ClickOnce方式来发布咱们的桌面应用程序之外,还能够将咱们的应用程序稍加改动发布为基于浏览器的应用程序。
3、常用的辅助研发工具
KAXAML:是一个轻量级的XAML编辑器,运用它咱们能够快速的查看XAML代码以及XAML所展示的UI界面。
Microsoft Expression Blend:简叫作(Blend)它是WPF UI界面设计师必须工具,利用它咱们能够设计出非常精美的UI界面,以及界面的样式、模板、动画等资源。
下载位置:
KAXAML:https://download.csdn.net/download/zy0131/10051214 Blend:https: //msdn.microsoft.com/zh-cn/(搜索Blend)
4、研发基本
1、新建WPF应用程序
选取菜单->“文件”->“新建”->“项目”,在“新建项目”对话框中选取WPF应用程序,修改名叫作为WpfDemo,而后点击“确定”按钮,如下图所示:
2、生成的文档结构图如下:
3、在App.xaml中的“StartupUri”属性能够指定项目运行时的起步窗体。如下图中“StartupUri=”MainWindow.xaml””,还能够定义咱们需要的系统资源以及引入程序集等
,如下图所示:
5、XAML语言
XAML语言:是微软机构为构建应用程序用户界面而创建的一种新的“可扩展应用程序标记语言”,供给了一种便于扩展和定位的语法来定义和程序规律分离的用户界面。
特点:
定义应用程序的界面元素
表示的声明WPF资源(样式、模板、动画等)
可扩展性(自定义UI控件) 集中关注于界面的设计和实现
6、XAML命名空间以及命名空间映射到程序集
1、XAML命名空间
研发语言会将常用功能以类的形式封装,研发人员按照自己的业务需要,亦会封装满足自己业务需要的类,倘若有序组织这些类?一方面,便于研发人员准确调用;另一方面,编译器能够有效识别拥有相同命名的类,就引入了命名空间,简单地说,是经过类似树状结构来组织各样类,是一种较为有效的类名摆列方式。 而XAML和.NET其他语言同样,亦是经过命名空间有效组织起XAML内部的关联元素类,这儿的命名空间与.NET中的命名空间不是一一对应的,而是一对多,一眼望去,都是“网址”,这儿的网址,是遵循XAML解析器标准的命名规则,而不是真正的网址(在IE中基本打不开)。
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"对应有些与XAML语法和编译关联的CLR名叫作空间,例如 <Style x:key="buttonMouseover" TargetType="{x:Type Button}">
这儿的xmlns和xmlns:x的区别在于x做为别名,在应用时,以前缀形式显现,而xmlns做为默认命名空间,不运用前缀标识的元素,来自该命名空间。
XAML命名空间的语法:
xmlns[:可选映射前缀]="命名空间描述"
重视:无加可选映射前缀的xmlns是WPF默认的命名空间,一个xaml文件只能有一个默认的命名空间 一个完整的xaml文件,必须具备两个命名空间。
2、自定义类或程序集映射语法 xmlns[:必选映射前缀]="clr-namespace:[命名空间];assembly=[程序集名叫作]"
在同一个处理方法下面新建一个“”的项目,命名为“WPFUserControl”,在项目的属性里面修改默认的命名空间为:MyControl.WpfUserControl,添加两个TextBlock和两个TextBox,如图所示:
3、在第1个项目里面引用新建的用户控件,重视:首要要添加新建用户控件库的引用。
4、映射到当前程序集的语法 xmlns[:必选映射前缀]="clr-namespace:[命名空间]"
在当前项目下面新建一个用户控件,添加两个TextBlock和两个TextBox,如下图所示:
在MainWindow.xaml里面调用新建的用户控件,需要引用命名空间:
|