蔡学镛详解WPF精粹:WPF VS Apollo
本文整理WPF技术的精华,介绍如何使用WPF编写微软Windows平台……
在Vista时代,身为编程员,就一定要具备Vista桌面应用开发的能力。而开发Vista桌面应用,最重要的就是要会WPF。本文整理WPF技术的精华,介绍如何使用WPF编写微软Windows平台。
什么是WPF?
WPF是Windows Presentation Foundation的缩写。WPF是一套API,利用WPF所开发出来程序可以是:
- 一般独立执行的Windows应用,也称为client应用。
- 或者是分布式(distributed)应用的前端——现在有一个更时髦的名称Rich Internet Application(RIA)。
虽然WPF是编写Windows平台的应用,但WPF应用绝对不同于以往的Windows应用:外在,WPF应用具有崭新的外观和新的图形效果(包含动画和3D);内在,WPF应用具有新的控件设计哲学和新的API。
WPF应用只能在.NET Framework 3.0的环境中执行,计算机上必须安装:
- Windows Vista(自带.NET Framework 3.0)或者
- Windows XP/SP2或者
- 加装.NET Framework 3.0的Windows 2003。
如果你是编程员,你的环境除了具备上述的要求之外,还必须配备:
- Visual Studio 2005 Professional Edition
- .NET Framework 3.0 and Windows SDK
- Visual Studio Extensions for WCF, WPF
上列的免费软件都可以从微软的MSDN网站下载,除此之外,Visual C#已推出 Express Edition,也可以免费下载。你可能想要使用免费的Visual C# Express Edition取代Professional Edition,但是Visual Studio Extensions for WCF, WPF只能搭配Professional Edition的Visual Studio 2005。由于Visual Studio 2005(以及Visual C# 2005 Express Edition)内附的.NET Framework SDK是2.0版,所以必须额外安装.NET Framework 3.0,并搭配Visual Studio Extensions for WCF, WPF。估计微软将在2007年底推出新版的Visual Studio,届时只要直接安装Visual Studio就行了,不用像现在这么辛苦,拼拼凑凑地四处下载和安装软件。
如果你无法取得Visual Studio 2005 Professional Edition,也不想安装巨大的Windows SDK(这东西大得吓人,需要1.15GB),那么直接利用免费的VisualC# Express Edition和免费的.NET Framework 3.0即可,一样可以写WPF程序,只是会有两个缺点:
- 在Visual C#中没有WPF的template,你必须手动写每一行程序,且手动加入相关DLL的参考。
- 不能使用XAML。
Windows开发技术的历史
Windows已经有22年的历史,这22年来,微软官方主力推行的编程语言与API有四个分水岭:
- 1985~1991年:C搭配Windows API。目前我们已很少用C和Windows API写程序了,但还是有必要熟悉这样的技术,因为有些特殊的时候会用到。
- 1992~2001年:C++搭配MFC链接库(这段时间也是Visual Basic最风光的时候)。在历史上MFC是最多人用的Windows编程方法。我很高兴MFC这么糟糕的技术终于淡出历史了!
- 2002~2006年:C#搭配Windows Form。这段期间IT技术的焦点是在Web上,所以虽然大家都在用.NET,但真正的主角是ASP.NET,而不是Windows Forms。Windows Forms还没等熬出头,WPF就出现了。Windows Forms注定会是历史中“最少人使用的微软开发技术”。Windows Forms其实是不错的技术,但好技术(Windows Forms)的下场是没人用,差技术(MFC)的下场是大家都在用。我只能说,Windows Forms生不逢时。
- 2007~今:C#搭配WPF。你可能觉得很奇怪,微软为何释出两个作用相似,却不同且不相容的.NET API。其实,Windows Forms在设计上比较偏向于传统的应用(类似Java Swing),没有考虑到Web/Markup的需求,所以后来微软才会设计全新的WPF。
- 本文关键词:

