黑馬程式設計師 WPF和winform的不同

2022-09-01 08:39:11 字數 1348 閱讀 2057

對於wpf和winform究竟有何不同?

個人感覺wpf可以取代winform,功能都一樣,只不過有的控制項名稱不一樣而已,並且wpf比winform更加簡便、直接、美觀。

winform完全靠屬性和拖控制項來完成窗體實現,檢視屬性設定需要自己在屬性框裡上下拖拉,費勁。

wpf可以通過xaml來完成對控制項屬性的修改,我們想知道如何實現的,可以直接檢視xaml即可,比較直觀。

因為本人能力有限,所以對於對於wpf和winform不同之處只能在介面和操作上來找出不同點。自己查了些資料也不滿意,最後在黑馬論壇上找到了一篇關於對於wpf和winform的不同的文章,寫的很好,很實在,很有用,給大家分享出來!

底層框架不一樣,介面展現不一樣。 參考資料 mfc 生成本機**,自然是很快。可是,訊息迴圈,減緩了介面顯示速度。

winform 封裝了 win32 的api,多次進行p/invoke 操作 (大部分使用p/invoke操作封裝),速度慢 。

wpf是一種新的模型,不再使用win32 模型,自己新建模型,使用dx 作為新的顯示技術,直接訪問驅動程式,加快了執行速度,可是,這種模型,需要支援dx 9 的顯示卡,硬體要求高(你還能找到現代機器不支援dx9 的嗎?)

開發效率上,mfc儘管mfc開發介面執行效率高但是開發效率低,作為現在的專案開發來說時間跟開發效率往往能決定專案的成敗,所以除非有特別的需求,否則都回盡量避免用mfc來做開發,mfc只是乙個弱封裝器。

開發成本,mfc〉wpf〉winform

用mfc開發成本太高,對開發者能力要求更高,作為客服當然希望開發的費用越少越好,開發者當然希望錢賺得越多越好,這樣一比,這也是mfc沒落的乙個很大的原因。

介面執行效率上,mfc==wpf〉winform

隨著計算機硬體的效能提高,多核cpu的普及,它們的差距會越來越小。

開發靈活性上:wpf〉mfc〉winform

美觀上:wpf〉winform〉mfc

這一項中mfc下要開發出乙個華麗的ui極其困難,也許你可以說你可以用控制項,但是商業開發控制項是要收費的!!wpf很容易就可以做出vista那樣的ui特效。mfc要寫出這種效果不知要寫到何年何月。

這樣一來mfc存在的價值就更低了。效率和美觀不如wpf,開發效率又不如winform,預計不出10年,隨著vista取代xp,mfc將會退出歷史舞台。

記憶體使用上:wpf〉winform〉mfc

隨著計算機硬體的效能提高wpf這個缺點會被忽略。

使用範圍:wpf〉mfc==winform

有以上可知:wpf 大有取代winform 和mfc之勢,從未來net的發展來看,mfc以後只會變成一種經典,作為一種技術來供開發者學習,winform和wpf兩者會並存發展,但最終都會被wpf取代,最終實現桌面應用程式和瀏覽器應用程式的統一。

黑馬程式設計師 WPF程式設計概述

asp.net android ios開發 net培訓 期待與您交流!1.什麼是api?api是程式設計師用來建立各種程式型別 主要是各種類 的乙個集合,操作計算機給程式設計師的乙個介面。wpf就是使用了乙個不一樣的dll api程式集 5.乙個視窗的各個重要屬性。包含其內容和背景的客戶區,和包含視...

黑馬程式設計師 WPF基礎屬性 控制項和語法

windows phone7手機開發 net培訓 期待與您交流!1 wpf事件中的sender wpf中所有事件響應方法第乙個引數都是sender,代表觸發事件的控制項物件,是object型別,需要型別轉換使用。應用 多個按鈕的click共享乙個事件處理方法 2 集合list 有時候不能預先確定長度...

黑馬程式設計師

asp.net android ios開發 net培訓 期待與您交流!map hashtable 底層是雜湊表資料結構,不可以存入null鍵和null值。該執行緒是同步的,jdk1.0出現,效率低。hashmap 底層是雜湊表資料結構,允許使用null鍵和null值。該集合執行緒是不同步的,將has...