RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Winfor、WPF,該如何選擇?

汽車電子技術(shù) ? 來源: dotNet工控上位機 ? 作者: 新閣教育付工 ? 2023-02-22 15:32 ? 次閱讀

前言

經(jīng)常遇到還沒開始學(xué)習(xí)C#的學(xué)員問我:

Winform和WPF,我應(yīng)該先學(xué)什么?

在很多人眼里,WPF是一門高級技術(shù),而Winform是比較Low的。

今天跟大家聊聊,關(guān)于WPF和Winform。

簡單聊聊

首先我認(rèn)為Winform不算是過時的技術(shù),WPF也不算是什么新技術(shù),兩者并不是你死我活的競爭狀態(tài),還是不同階段的不同選擇。

就像是汽車一樣,Winform偏向于家用代步車,WPF偏向于高級的轎車,不同的價格,不同的性能,不同的定位。

對于剛畢業(yè)幾年的年輕人來說,家用代步車無疑是更適合的,但是你只要努力,你肯定會到達購買高級轎車的階段。

所以我的建議是對于初學(xué)者來說,還是要先學(xué)習(xí)Winform,因為學(xué)習(xí)Winform的成本會更低,學(xué)習(xí)WPF,你要學(xué)習(xí)的內(nèi)容會更多,至少要多學(xué)習(xí)一門XAML語言。

然而,不管是代步車還是高級轎車,都需要有駕照,你才能上手,對于Winform和WPF來說,這個駕照就是C#編程語言。

兩者區(qū)別

如果要說Winform和WPF最大的區(qū)別在哪里?

我覺得一方面是布局方式,一方面是驅(qū)動方式。

首先談下布局方式,一般來說,界面布局的方式有兩種,一種是拖控件,另一種是通過布局控件來實現(xiàn),而Winform主要是以拖控件的方式為主,配合布局控件做整體布局,而WPF則恰恰相反,雖然也可以拖控件,但是很少這么做,主要是通過編寫XAML代碼來實現(xiàn)。

再來說下驅(qū)動方式,Winform是基于事件驅(qū)動,WPF是基于數(shù)據(jù)驅(qū)動,以操作一個按鈕,執(zhí)行一個查詢操作為例,Winform是在按鈕的點擊事件里,寫好查詢代碼,然后將結(jié)果展示在數(shù)據(jù)控件里,而WPF則是通過按鈕綁定一個動作方法,數(shù)據(jù)控件綁定好數(shù)據(jù)源,在方法里查詢即可,這樣做的目的就是盡量減少前后端的耦合

圖片

寫在最后

無論是Winform還是WPF,都是一種開發(fā)桌面程序的技術(shù),都需要采用C#語言來編程。

不管是什么語言,什么技術(shù),對我們來說,只是一個工具而已,適合自己的才是最好的,能解決問題的就是好的,就像那句諺語,白貓黑貓,能抓老鼠的就是好貓。

不管是Winform還是WPF,最終都是為了項目開發(fā),所以最好的方式是兩者都要學(xué)會,然后結(jié)合項目的實際需要、開發(fā)周期、開發(fā)成本來綜合選擇。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 技術(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    431

    瀏覽量

    58478
  • wpf
    wpf
    +關(guān)注

    關(guān)注

    1

    文章

    18

    瀏覽量

    8871
收藏 人收藏

    評論

    相關(guān)推薦

    WPF界面編程與LabVIEW

    的。WPF是.NET中編寫程序界面的一套體系。微軟提出WPF時的構(gòu)想是非常好的:它希望把程序的界面和運行邏輯部分完全分開來,這樣可以有專門美工來設(shè)計程序界面;而程序員則專心實現(xiàn)程序功能的編碼。它能
    發(fā)表于 11-19 14:33

    c#/winform c#/wpf c++/QT上位機

    c#/winform c#/wpf c++/QT上位機,本人從事上位機開發(fā)5年,熟悉各大底層硬件交互,tcp/ip udp 串口通訊 CAN通訊 有意+ 2038 3478 72
    發(fā)表于 09-21 21:20

    解如何實現(xiàn)WPF與Lua的交互

    嵌入式腳本語言能賦予我們系統(tǒng)程序更加強大的靈活性與拓展性,以魔獸級的Lua為例,不過200多K的體積卻擁有極快的運算速度。在.NET開發(fā)應(yīng)用中,它可以被廣泛的應(yīng)用到允許Unsafe Code諸如:WinForm、WebForm、WPF等領(lǐng)域,其表現(xiàn)出來的易用性(無須考慮核心模塊復(fù)雜的邏輯,只需...
    發(fā)表于 12-23 06:46

    基于WPF的醫(yī)療輔助軟件設(shè)計與開發(fā)

    WPF的全稱是Windows Presentation Foundation,是未來十年里Windows平臺GUI開發(fā)的最主要的技術(shù)之一。它是微軟開發(fā)的一款基于.NET(目前最新版本為.NET Framework 4.0)平臺的最新的軟件界面顯示系統(tǒng)
    發(fā)表于 07-27 15:57 ?1724次閱讀

    智能后視鏡到底如何選擇

    智能后視鏡到底如何選擇,感興趣的小伙伴們可以看看我的上傳的資源,有分享更多。
    發(fā)表于 08-12 15:13 ?18次下載

    基于WPF的運動效果評估系統(tǒng)

    現(xiàn)狀,調(diào)查和分析出運動員運動效果評估系統(tǒng)的需求,基于WPF程序設(shè)計語言完成了對運動員運動效果評估系統(tǒng)的開發(fā),所開發(fā)的運動員運動效果評估系統(tǒng)s具有運動員日常信息管理,運動效果評估,運動員傷病康復(fù)評價等功能。并對運動效果
    發(fā)表于 11-16 16:01 ?3次下載
    基于<b class='flag-5'>WPF</b>的運動效果評估系統(tǒng)

    WPF 應(yīng)用程序的開始兩個線程介紹

    開始著手寫這個WPF系列,這里的一站式,就是力爭在每一個點上能把它講透,當(dāng)然,做不到那么盡善盡美,如果有不對的地方也歡迎朋友們指正,我會逐步補充,爭取把這個系列寫好。 通常,WPF 應(yīng)用程序從兩個
    發(fā)表于 11-30 11:02 ?4299次閱讀
    <b class='flag-5'>WPF</b> 應(yīng)用程序的開始兩個線程介紹

    基于WPF電機控制系統(tǒng)監(jiān)控軟件

    電機控制系統(tǒng)是決定電動汽車性能優(yōu)劣的核心,為了更加直觀方便的觀察和分析控制效果的優(yōu)劣,并方便快捷的實現(xiàn)對控制參數(shù)的修改,使控制效果達到最佳,本文設(shè)計并實現(xiàn)了基于WPF的電機控制系統(tǒng)監(jiān)控軟件。軟件采用
    發(fā)表于 12-22 13:46 ?11次下載
    基于<b class='flag-5'>WPF</b>電機控制系統(tǒng)監(jiān)控軟件

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

    本文檔的主要內(nèi)容詳細介紹的是使用WPF開發(fā)的簡易計算器軟件免費下載。 需要安裝VS2017以上版本。用WPF開發(fā)得一個小程序。新手可以看看,當(dāng)一個練手玩玩。
    發(fā)表于 09-18 08:00 ?1次下載
    使用<b class='flag-5'>WPF</b>開發(fā)的簡易計算器軟件免費下載

    怎樣使用C#WPF程序與西門子S7-1200/S7-1500PLC進行通信呢

    使用C#WPF程序與西門子S71200/S71500PLC通信,實現(xiàn)數(shù)據(jù)實時采集,入數(shù)據(jù)庫,實時趨勢圖顯示,實時報警功能。
    的頭像 發(fā)表于 09-13 10:28 ?8215次閱讀

    SDWAN、VPN、專線怎么選擇呢?

    一文帶你深度了解如何選擇SDWAN、VPN、和專線。
    的頭像 發(fā)表于 09-22 17:27 ?2561次閱讀
    SDWAN、VPN、專線<b class='flag-5'>該</b>怎么<b class='flag-5'>選擇</b>呢?

    WPF的Xceed Pro主題

    完美的主題,讓您的整個WPF應(yīng)用程序看起來真正專業(yè)。設(shè)置所有MicrosoftWPF控件(包括數(shù)據(jù)網(wǎng)格)以及所有Xceed控件的樣式。包括匹配的畫筆,因此您可以設(shè)計自己的控件或其他控件,使其與主題無縫集成。
    的頭像 發(fā)表于 11-01 11:40 ?1012次閱讀

    基于WPF的上位機開發(fā)模板

    為腳本工具添加一個可視化的界面,在界 面上添加一些按鈕/列表/彈框等信息,將會降低腳本工具的學(xué)習(xí)和使用成本,提高工具的友好性。 基于C#語言的WPF(Windows Presentation Foundation)便是一個很好的界面開發(fā)工具,它可以進行可視化編程,
    發(fā)表于 05-09 11:03 ?5次下載
    基于<b class='flag-5'>WPF</b>的上位機開發(fā)模板

    EML與DML:有什么區(qū)別?如何選擇?

    DML和EML有什么區(qū)別?如何選擇?本文將回答這些問題。
    的頭像 發(fā)表于 06-30 10:43 ?2399次閱讀
    EML與DML:有什么區(qū)別?<b class='flag-5'>該</b>如何<b class='flag-5'>選擇</b>?

    新版WPF Gallery預(yù)覽版亮相微軟應(yīng)用商店,采用Fluent Design設(shè)計

    據(jù)了解,Windows Presentation Framework(簡稱 WPF)是一款用于構(gòu)建 Windows 桌面應(yīng)用的用戶界面(UI)框架,其獨特之處在于,它能支持豐富多樣的應(yīng)用開發(fā)功能。
    的頭像 發(fā)表于 05-22 14:26 ?1057次閱讀
    RM新时代网站-首页