WPF縮寫為Windows Presentation Foundation的縮寫 ,其原來代號為“Avalon”,因“我佩服”拼音首字母組合一樣,國內有人調侃地稱之為“我佩服”。WPF是微軟新一代圖形系統(tǒng),運行在.NET Framework 3.0架構下,為用戶界面、2D/3D 圖形、文檔和媒體提供了統(tǒng)一的描述和操作方法;贒irectX 9/10技術的WPF不僅帶來了前所未有的3D界面,而且其圖形向量渲染引擎也大大改進了傳統(tǒng)的2D界面,比如Vista中的半透明效果的窗體等都得益于WPF。 程序員在WPF的幫助下,要開發(fā)出媲美Mac程序的酷炫界面已不再是遙不可及的奢望。 WPF相對于Windows客戶端的開發(fā)來說,向前跨出了巨大的一步,它提供了超豐富的.NET UI 框架,集成了矢量圖形,豐富的流動文字支持flow text support,3D視覺效果和強大無比的控件模型框架。
Windows Presentation Foundation
Windows Presentation Foundation(以前的代號為“Avalon”)是 Microsoft 用于 Windows 的統(tǒng)一顯示子系統(tǒng),它通過 WinFX 公開。它由顯示引擎和托管代碼框架組成。Windows Presentation Foundation 統(tǒng)一了 Windows 創(chuàng)建、顯示和操作文檔、媒體和用戶界面 (UI) 的方式,使開發(fā)人員和設計人員可以創(chuàng)建更好的視覺效果、不同的用戶體驗。
Windows Presentation Foundation 發(fā)布后(計劃在 2006 年),Windows XP、Windows Server 2003 和以后所有的 Windows 操作系統(tǒng)版本都可以使用它。
Windows Presentation Foundation
Windows Presentation Foundation 由兩個主要部分組成:引擎和編程框架。
• Windows Presentation Foundation 引擎。Windows Presentation Foundation 引擎統(tǒng)一了開發(fā)人員和設計人員體驗文檔、媒體和 UI 的方式,為基于瀏覽器的體驗、基于窗體的應用程序、圖形、視頻、音頻和文檔提供了一個單一的運行時庫。Windows Presentation Foundation 使得應用程序不僅能夠充分利用現(xiàn)代計算機中現(xiàn)有的圖形硬件的全部功能,而且能夠利用硬件將來的進步。例如,Windows Presentation Foundation 的基于矢量的呈現(xiàn)引擎使應用程序可以靈活地利用高 DPI 監(jiān)視器,而無需開發(fā)人員或用戶進行額外的工作。 同樣,當 Windows Presentation Foundation 檢測到支持硬件加速的視頻卡時,它將利用硬件加速功能。
• Windows Presentation Foundation 框架。Windows Presentation Foundation 框架為媒體、用戶界面設計和文檔提供的解決方案遠遠超過開發(fā)人員現(xiàn)在所擁有的。Windows Presentation Foundation 的設計考慮了可擴展性,使開發(fā)人員可以完全在 Windows Presentation Foundation 引擎的基礎上創(chuàng)建自己的控件,也可以通過對現(xiàn)有 Windows Presentation Foundation 控件進行再分類來創(chuàng)建自己的控件。Windows Presentation Foundation 框架的核心是用于形狀、文檔、圖像、視頻、動畫、三維以及用于放置控件和內容的面板的一系列控件。這些“自有控件”為開發(fā)下一代用戶體驗提供了構造塊。
Microsoft 在引入 Windows Presentation Foundation 的同時,還引入了 XAML,這是一種公開表示 Windows 應用程序用戶界面的標記語言,可使開發(fā)人員和設計人員用來構建和重用 UI 的工具更加豐富。對于 Web 開發(fā)人員,XAML 提供了熟悉的 UI 說明模式。XAML 還使 UI 設計從基礎代碼中分離出來,從而使開發(fā)人員和設計人員之間的合作更加緊密。
為什么選擇 Windows Presentation Foundation?
對于企業(yè),Windows Presentation Foundation 實現(xiàn)了改進的客戶關系和不同的應用程序。通過提供能夠快速提供更好的視覺效果、獨特的用戶體驗的技術,來建立與客戶的密切關系,使企業(yè)可以建立穩(wěn)定的數(shù)字客戶關系和獨特的品牌化機會。而且,由于 Windows Presentation Foundation 是窗體、文檔、視頻、三維以及其他功能的綜合,因此企業(yè)可以創(chuàng)建持久的用戶體驗解決方案,并集成到客戶的日常活動中。
對于開發(fā)人員和設計人員,Windows Presentation Foundation 提供了統(tǒng)一的 UI 平臺,因此他們只需學習一個模式,就可以獲得無限可能的 UI 體驗。對于 .NET 開發(fā)人員,其框架是熟悉的,并且它最終將減少提供最佳用戶體驗和通信邏輯所需的代碼行數(shù)。對于設計人員,Windows Presentation Foundation 提供的平臺可消除內容、媒體和應用程序之間的邊界。最重要的是,Windows Presentation Foundation 可以使開發(fā)人員和設計人員同步緊密地合作來快速提供不同的連通體驗。
目前開發(fā)界的對WPF響應程度
目前已有很多人開始考慮或者已經轉向WPF,一場新的學習熱潮已經開始。但根據(jù)我最近的學習和了解,國內關于WPF的資料很少,除了msdn提供的資料以外,基本都是來自國外的資料,有些則是國外開發(fā)人員blog上的資料,當然都是英文的。因此如果現(xiàn)在能夠引進一些WPF的書絕對是很好的時機。而且國外目前的幾本WPF書也是剛剛上市,如果我們可以盡快引進的話,絕對可以幫助國內開發(fā)人員在最短時間內趕上國際步伐。
目前微軟針對WPF提供的服務和支持
隨著Vista RTM的發(fā)布,微軟新一輪的技術推廣已經開始。其實在此之前,WPF已經有很大的推廣,因為CTP版本已經發(fā)布了有一段日子了。當然很多開發(fā)人員主要以技術研究為主,也有少數(shù)公司已經開始從事基于WPF的產品研發(fā)工作。
1. 目前WPF的正式版本已經發(fā)布(隨.net framework 3.0正式版發(fā)布),你可以從msdn上免費下載
2. 相應的技術支持已經開始,但目前僅限于大客戶,主要做售前技術支持,對于普通開發(fā)人員的技術支持可能要等到明年2月份才會開始(個人知道的情況,請以微軟官方技術支持網站發(fā)布的信息為準)
3. WPF的VS2005插件目前還只有社區(qū)預覽版(CTP版),也是從msdn上免費下載的,但正式版恐怕還要等一段時間,但使用CTP版本確實已經可以在VS2005中進行所見即所得的WPF開發(fā)。
4. WPF/E CTP版本已經發(fā)布,你可以在msdn上免費下載。同時發(fā)布的還有WPF/E Sample Pack for CTP。