前言
經常遇到還沒開始學習C#的學員問我:
Winform和WPF,我應該先學什么?
在很多人眼里,WPF是一門高級技術,而Winform是比較Low的。
今天跟大家聊聊,關于WPF和Winform。
簡單聊聊
首先我認為Winform不算是過時的技術,WPF也不算是什么新技術,兩者并不是你死我活的競爭狀態,還是不同階段的不同選擇。
就像是汽車一樣,Winform偏向于家用代步車,WPF偏向于高級的轎車,不同的價格,不同的性能,不同的定位。
對于剛畢業幾年的年輕人來說,家用代步車無疑是更適合的,但是你只要努力,你肯定會到達購買高級轎車的階段。
所以我的建議是對于初學者來說,還是要先學習Winform,因為學習Winform的成本會更低,學習WPF,你要學習的內容會更多,至少要多學習一門XAML語言。
然而,不管是代步車還是高級轎車,都需要有駕照,你才能上手,對于Winform和WPF來說,這個駕照就是C#編程語言。
兩者區別
如果要說Winform和WPF最大的區別在哪里?
我覺得一方面是布局方式,一方面是驅動方式。
首先談下布局方式,一般來說,界面布局的方式有兩種,一種是拖控件,另一種是通過布局控件來實現,而Winform主要是以拖控件的方式為主,配合布局控件做整體布局,而WPF則恰恰相反,雖然也可以拖控件,但是很少這么做,主要是通過編寫XAML代碼來實現。
再來說下驅動方式,Winform是基于事件驅動,WPF是基于數據驅動,以操作一個按鈕,執行一個查詢操作為例,Winform是在按鈕的點擊事件里,寫好查詢代碼,然后將結果展示在數據控件里,而WPF則是通過按鈕綁定一個動作方法,數據控件綁定好數據源,在方法里查詢即可,這樣做的目的就是盡量減少前后端的耦合。
寫在最后
無論是Winform還是WPF,都是一種開發桌面程序的技術,都需要采用C#語言來編程。
不管是什么語言,什么技術,對我們來說,只是一個工具而已,適合自己的才是最好的,能解決問題的就是好的,就像那句諺語,白貓黑貓,能抓老鼠的就是好貓。
不管是Winform還是WPF,最終都是為了項目開發,所以最好的方式是兩者都要學會,然后結合項目的實際需要、開發周期、開發成本來綜合選擇。
-
技術
+關注
關注
0文章
432瀏覽量
58772 -
wpf
+關注
關注
1文章
19瀏覽量
8973
發布評論請先 登錄
WPF界面編程與LabVIEW
c#/winform c#/wpf c++/QT上位機
解如何實現WPF與Lua的交互
無鉛焊接時該如何選擇焊接溫度
基于WPF的醫療輔助軟件設計與開發
WPF 應用程序的開始兩個線程介紹
基于WPF電機控制系統監控軟件

使用WPF開發的簡易計算器軟件免費下載

怎樣使用C#WPF程序與西門子S7-1200/S7-1500PLC進行通信呢
WPF的Xceed Pro主題
新版WPF Gallery預覽版亮相微軟應用商店,采用Fluent Design設計
SciChart 3D for WPF圖表庫

評論