WPF的介绍和XAML语言

WPF (Windows Presentation Foundation):Windows 呈现基础==》是微软推出的基于Windows的 用户界面框架,属于.NET Framework 3.0 的一部分(开始引入),它提供了统一的编程模型,语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面,与WCF 及 WWF 并行为新一代 Windows操作系统以及WinFX的三个重大应用程序开发类库。

WPF以前的代号为“AValon”是 Microsoft 用于 Windows 的统一显示子系统,它通过WinFX 公开。它由显示引擎和托管代码框架组成,WPF 统一了 Windows创建,显示和操作文档,媒体和用户界面(UI)的方式,使开发人员可以创建更好的视觉效果,不同的用户体验。

特点:(1)程序人员与美工人员明确分工,对与WPF最重要的特色,矢量图的超强支持。兼容支持2D绘图,比如:矩形,自定义路径,位图等。文字显示的增强,XPS和消锯齿。三维强大的支持。包括3D控件及事件,与2D及视频合并打造更立体效果。渐变,使用高精确的(ARGB)颜色,支持浮点类型的像素坐标。这些对GDI+远远不及的。

  1. 灵活、易扩展的动画机制!.Net Framework 3.0类库提供了强大的基类,只需继承就

可以 实现自定义程序使用绘制。接口设计非常直观,完全面向对象的对象模型。使用对象描述语言XAML。使用开发工具的可视化编辑。

 组成结构:WPF 由两个主要部分组成:引擎和编程框架。

WPF框架的核心是用于形状、文档、图像、视频、动画、三维以及用于放置控件和内容的面板的一系列控件

控件:从UI上分析:控件就是显示数据和响应用户操作的UI元素,即:控件就是数据和行为的载体。

数据驱动UI:

传统的GUI界面都是由windows消息通过事件传递给程序,程序根据不同的操作来表达出不同的数据体现在UI界面上,这样数据在某种程度上来说,受到很大的限制。

:现在:WPF中是数据驱动UI,数据是核心,处于主动的,UI从属于数据并表达数据,是被动的。WPF数据第一,控件第二。

控件的分类:(控件分为6类)

· 布局控件:是可以容纳多个控件或者嵌套其他布局的控件,用于在UI上组织和排列控件。其父类为Panel

· 内容控件:只能容纳一个控件或者布局控件作为他的内容。所以经常借助布局控件来规划其内容。其父类为ContentControl

· 带标题内容控件:相当于一个内容控件,但是可以加一个标题,标题部分也可以容纳一个控件或者布局,其父类为HeaderedContentControl

· 条目控件:可以显示一列数据,一般情况下,是数据的类型是相同的。其共同的基类为ItemsControl

· 带标题的条目控件:和上面的带标题内容控件类同,其基类为

HeaderdeItemsControl

· 特殊内容控件:这类控件比较独立,但也比较常用,如TextBoxTextBlockImage等。

  1. App.xaml中的“StartupUri”属性可以指定项目运行时的启动窗体

x:Class=”命名空间.类名”;把后台类文件与前端合并,名字必须要一致,partial关键字就是表示此类或此方法为分布类或分布方法的

二、XAML语言.

XAML语言:是微软公司为构建应用程序用户界面而创建的一种新的“可扩展应用程序标记语言”,提供了一种便于扩展和定位的语法来定义和程序逻辑分离的用户界面。

特点:

  1. :定义应用程序的界面元素
  2. :显示的声明WPF资源(样式,模板,动画等)
  3. :可扩展性(自定义UI控件)
  4. :集中关注于界面的设计和实现

三、XAML命名空间以及命名空间映射到程序集

开发人员会将常用功能以类的形式封装,开发人员根据自己的业务需求,也会封装满足自身业务需求的类,如何有序组织这些类?一方面,便于开发人员准确调用;另一方面,编译器可以有效识别具有相同命名的类,就引入了命名空间,简单的说,是通过类似树状结构来组织各种类,是一种较为有效的类名排列方式。

而XAML 和.NET其他语言一样,也是通过命名空间有效组织起XAML 内部的相关元素类,这里的命名空间与.NET中的命名空间不是一一对应的,而是一对多,一眼望去,都是“网址”,这里的网址,是遵循XAML解析器标椎的命名规则,而不是真正的网址,而是映编码,映射一组命名空间

xmlnsxmlns:x的区别在于x作为别名,在应用时,以前缀形式出现,而xmlns

为默认命名空间,不使用前缀标识的元素,来自该命名空间。

XAML命名空间的语法: xmlns:[可选映射前缀]="命名空间描述" 注意:没有加可选映射前缀的xmlnsWPF默认的命名空间,一个xaml文件只能有一个

默认的命名空间

一个完整的xaml文件,必须具备两个命名空间。

2、自定义类或程序集映射语法

xmlns:[必选映射前缀]="clr-namespace:[命名空间];assembly=[程序集名称]"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值