WPF平台开发客户端优势点评

开发 开发工具
WPF平台的应用方法非常丰富。对于初学者来说,首先需要知道它的一些基本概念。希望这篇文章可以为大家在学习过程中带来一些帮助。

WPF平台的出现为我们带来非常丰富的功能实现。在这里将会为大家介绍一下有关概念。希望可以提高对大家WPF平台的理解程度。WPF是一个用于开发富客户端应用程序的平台。#t#

它是.NET 3.0框架的一部分,因此已经在Windows Vista中内置,此外它也能够在Windows XP SP 2以及Windows 2003中安装。

构建WPF平台用户界面可以使用.NET对象模型,不过WPF也提供XAML——即eXtensible Application Markup Language——这是一种标记语言,使用户界面的表现能够独立于其行为进行设计。

两种做法实际上是等价的,XAML只是提供了一种额外的语法。不过XAML语法是方便工具创建和使用而设计的,这样的工具能够使设计人员直接进行用户界面设计,而不需要任何编码技能。

WPF平台不是.NET框架中***套用于开发富客户端的API。Windows Forms作为它的前辈,是构建在Win32的窗口系统之上的.NET封装层。尽管Windows Form在Win32之上添加了很多功能,但由于下层UI平台的限制,用它进行开发有时依旧会缩手缩脚。

WPF没有构建在Win32的窗口系统上,而是构建于DirectX之上,这就使得WPF能够完全利用起本机显卡的能力。然而WPF并非只能用于开发视觉效果非凡的应用程序。

WPF的***优势,就是它将许多富客户端的特性集成在同一个平台上,其中大部分的独立特性都单独在其他UI技术中出现过。例如,WPF提供了构建矢量动画和视频的能力,这原本一直是Flash所专长的。

WPF平台提供了传统的Windows控件,例如按钮、列表框以及树型控件等等,它们在Win32和Windows Forms中已经出现了很多年了。此外WPF还提供了流式文本布局,这原来是HTML的能力(尽管目前WPF的文本渲染能力远比HTML和CSS来的强大)。

一些面向HTML的技术,例如JSP和ASP.NET,也曾使用过WPF中标记+后台代码的应用程序构建方式,不过它们只能提供最简单的3D支持,但是OpenGL和DirectX长久以来就拥有强大得多的3D渲染能力。

WPF之前的技术都能各自独当一面,但是很难在同一个应用程序中使用不同的技术。例如,我们很难在Windows的按钮和下拉菜单中使用Flash的动画功能(Flash应用程序一般使用自行开发的控件,但是它们很难与操作系统的当前主题进行统一,可用性也比较差,而它们的行为一般也和真正的控件不同);

我们也很难同时利用HTML中的流式文本布局和富客户端中的数据绑定技术。一般说来,如果您希望混合使用不同的技术,您的应用程序需要被分割为多个独立部分,而这几个部分之间的通信会非常困难,甚至几乎不可能实现。

相反,用WPF就容易多了。不幸的是,目前许多展示这种集成能力的WPF示例都有些脱离实际。在一个流式布局的文档中嵌入一个普通的Windows按钮,再加上一个包含立方体的标题,这个立方体还被一个完整的视频动画包裹起来,这种做法的确能够说明同时使用不同的UI特性并非难事,但问题是,有谁会设计开发这样一个应用程序呢?

事实上,您一般不会将所有的UI功能集成在一个应用程序中。这么做很容易让人想起早期的Web,许多站点都不假思索地利用所有可能的HTML特性。这种做法相当可怕,很长时间以后人们才了解该如何使用合适的技术来构建优秀的Web应用程序。

同样道理,将WPF平台的各种可视化特性进行随意组合的确无比强大和灵活,但是使用其中有限的几种已经足够开发出有用的应用程序了。而且对于视觉效果一般的应用程序开发,WPF也提供了许多有用的支持。

责任编辑:曹凯 来源: javaeye.com
相关推荐

2013-05-09 09:33:59

2023-03-05 18:36:52

ChatGpt跨平台ORM

2010-08-01 16:20:29

Android

2016-11-29 13:03:46

微信客户端跨平台组件

2009-04-22 18:42:13

Vmware虚拟化英特尔

2013-07-22 14:29:35

iOS开发ASIHTTPRequ

2021-09-22 15:46:29

虚拟桌面瘦客户端胖客户端

2011-08-17 10:10:59

2011-07-07 13:21:56

UI设计

2013-07-04 10:01:04

2010-05-31 10:11:32

瘦客户端

2011-03-24 13:00:31

配置nagios客户端

2010-12-21 11:03:15

获取客户端证书

2011-03-02 14:36:24

Filezilla客户端

2011-10-26 13:17:05

2018-04-04 09:30:23

美团点评响应式架构

2022-11-29 17:08:03

开发Web客户端

2011-04-06 14:24:20

Nagios监控Linux

2011-03-21 14:53:36

Nagios监控Linux

2009-03-04 10:27:50

客户端组件桌面虚拟化Xendesktop
点赞
收藏

51CTO技术栈公众号