嗯,開篇就是一個,很容易就,離題萬里拐成巨型車禍現(xiàn)場的選題。
首先,什么是WPF?
縮略一段官方說明
WPF是.NET Framework的一個子集,開發(fā)者可用.Net Framework編程語言,如C#或Visual Basic,創(chuàng)建Windows桌面客戶端應(yīng)用程序
那,什么又是.Net Framework?
.NET Framework是由微軟開發(fā)的主要在Windows上運行的軟件框架
自2006年起,初代WPF(WPF 3.0)納入DotNet全家桶(大霧)進入.Net大家庭以來,WPF的版本追隨著母體.NET Framework的版本不斷迭代,WPF的兼容性也與.NET Framework的兼容性密不可分。
WPF到底可以在哪些平臺愉快的玩耍呢?
.Net Core?跨平臺?
官方的說法是
emmmmm,WPF是基于Windows技術(shù)構(gòu)建的,.Net Core不支持
下一個
Windows全平臺?
先看兩張圖
從WPF層面說,WPF最重要的元屬性DataBinding是從3.5版本才開始有的;而無論從穩(wěn)定性還是API的豐富性上來說,.Net 4.0+是更優(yōu)選擇
從.Net FrameWork層面來說,XP系統(tǒng)原生不自帶可供WPF運行的.Net版本。雖然經(jīng)過微軟的不斷迭代(聽說最高XP SP3可安裝.Net 4.0版本,尚未找到官方明細(xì)佐證),獨立安裝.Net FrameWork,也可以運行 WPF程序。但由于底層組件的缺失(比如從VISTA才開始引進的Windows Aero效果),無論從UI體驗還是運行效率,與Win7+系統(tǒng)上的運行體驗相差甚遠(yuǎn)。
綜上,如果想獲得一個較佳的用戶體驗,發(fā)揮WPF基本的優(yōu)勢,請選擇Win7及以上+.Net 4.0及以上的組合套裝——假如你面對的是一個同意重裝系統(tǒng)的用戶
更多槽點?
回到標(biāo)題,WPF客戶端開發(fā)可遠(yuǎn)遠(yuǎn)不是只用WPF就能解決的,如果我們需要開發(fā)報表,我們可能需要用到Office組件;如果我們要開發(fā)客戶端內(nèi)嵌網(wǎng)頁,我們可能需要和IE的兼容性打交道。
如果有誰能把微軟全系產(chǎn)品的歷史出一本書,不知道5000頁夠不夠發(fā)揮?