使用VS2010的WPF功能打造个性图形

本章将向您介绍WPF的图形、动画和媒体功能,使用这些功能,可以向应用程序添加图形、过渡效果、声音和视频。通过WPF提供对、向量图形、动画和内容撰写的集成支持,使得开发人员可以轻松地生成悦目的用户界面和内容。

  WPF 提供高级绘图和动画功能,以前只能从专用库(具体来说,就是 图形设备接口 (GDI) 和 Microsoft Windows GDI+)使用这些功能。现在,WPF 提供对多媒体、向量图形、动画和内容撰写的集成支持,使得开发人员可以轻松地生成悦目的用户界面和内容。使用 Microsoft Visual Studio 或者甚至文本编辑器(如 Microsoft 记事本),可以创建矢量图形或复杂的动画并将媒体集成到应用程序中。

  WPF 在图形和多媒体方面的新增功能,向开发人员引进了新的图形功能,这些功能具有如下优点:

  与分辨率和设备无关的图形。WPF 图形系统使用与设备无关的单元来支持分辨率和设备独立性。每个与设备无关的像素都会随系统上的每英寸点数设置自动缩放。

  更高的精度。WPF 坐标系使用双精度值,而不使用浮点值。转换值和不透明度值也是使用双精度值来表示。WPF 还支持更广泛的颜色域 (scRGB),并为管理来自不同颜色空间的输入提供了集成的支持。

  高级图形和动画支持。WPF 通过为您管理场景图简化了图形编程;您无需再担心场景处理、呈现循环和双线性内插算法。WPF 提供了命中测试支持、集成的动画系统和全面的字母合成支持。

  硬件加速。WPF 图形系统旨在利用图形硬件来最小化 使用率。

  使用VS2010的WPF功能打造个性图形

  WPF提供了一个极好的自定义对象模型,允许运用各种风格和已存在的各种元素模板。该模型是一个令人满意的新模型,允许将几乎任何元素放置在另一个元素中。通过这个新功能,在整个创建自定义控件的过程中,都不会遇到问题。当然,任何事物都不是{jd1}的,使用WPF创建自定义控件,也有可能会遇到一些问题。本部分内容包括在什么情况下需要考虑创建自定义控件,以及如何创建自定义控件。

  接下来,将进入WPF应用程序的企业应用开发部分。使用WPF可以创建两种风格的应用程序:基于Windows的单机运行的应用程序与基于Web的应用程序。这两种类型的程序基于相同的代码,即XAML与.NET。这意味着为应用程序指定目标主机环境,只需要简单改变工程文件的设置并管理这些即可。这项功能是非常强大的。

  对于开发人员和设计人员,WPF提供了统一的 UI 平台,因此他们只需学习一个模式,就可以获得无限可能的 UI 体验。对于 .NET 开发人员,其框架是熟悉的,并且它最终将减少提供{zj0}用户体验和逻辑所需的代码行数。对于设计人员,WPF提供的平台可xx内容、媒体和应用程序之间的边界。最重要的是,WPF可以使开发人员和设计人员同步紧密地合作来快速提供不同的连通体验。

  当WPF和Silverlight越来越受到.NET开发人员重视的时候,两者间的界限也越来越模糊。WPF支持多种类型的触发器。一个简单的触发器附加到依赖关系属性后,当触发器条件满足的时候便会自动修改样式。除了简单触发器以外,WPF也支持可响应路由事件或使用数据绑定的触发器。Silverlight使用视觉状态管理器代替触发器。WPF当前并不提供该技术,但会在WPF 4.0中添加。

  由于名称的关系, WPF与WPF/E一直被认为是类似的东西。 其实两者除了呈现UI的部分使用的是共通语言 XAML 之外,两者在本质上有很大的不同。甚至,XAML对WPF与Silverlight有不同的意义,也不能算是两者间共通的语言。

  XAML对WPF来说,是一种把.NET程序语言改用XML来描述的方式。换句话说,XAML用在WPF上,像是另外一种程序语言。与C#, VB , IronPython相似。所以XAML能做的, C# , VB一样都可以做到。但是反过来, C# , VB 能做的,XAML不一定能做到,因为XAML是为了配合开发工具,特别设计出来的一种语言,本身有他的局限性,所以还是得配合正规的程序语言,才能完成一个真正有用的程序。

  但是以目前XAML所具备的能力,不靠C# , VB而做到平常简单可以做到的,应该是没啥问题。因此, Application = Code + Markup的作者Petzold才会把这本书的结构写成先用以C#来写WPF程序,后半部才介绍XAML。 避免大家误解 WPF = XAML。

  XAML还可以用在WF上,所以并不局限于WPF。 如果用了XAML,以为这就是WPF的全部,就大错特错啰!

  然而,XAML对Silverlight来说,本质比较贴近SVG。XAML用来描述构成画面的结构树,然后配合去操作这颗表示UI的树,以达到互动的效果。 所以对Silverlight来说, XAML像是用来扩充HTML/CSS原本不足的一组Tag。就像之中,一样可以用Javascript去操作SVG所描述的画面,藉以达成多媒体效果。

  WPF支持多种类型的触发器。一个简单的触发器附加到依赖关系属性后,当触发器条件满足的时候便会自动修改样式。除了简单触发器以外,WPF也支持可响应路由事件或使用数据绑定的触发器。

评论审阅已启用。您的评论可能需要一段时间才会出现。

郑重声明:资讯 【使用VS2010的WPF功能打造个性图形】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——