1、定義
一、Winform的定義:html
WinForm是·Net開發平臺中對Windows Form的一種稱謂。數據庫
二、WPF的定義:編程
WPF(Windows Presentation Foundation)是微軟推出的基於Windows 的用戶界面框架,屬於.NET Framework 3.0的一部分。它提供了統一的編程模型、語言和框架,真正作到了分離界面設計人員與開發人員的工做;同時它提供了全新的多媒體交互用戶圖形界面安全
2、特色
一、Winform的特色:框架
- 功能強大:Windows窗體可用於設計窗體和可視控件,以建立豐富的基於Windows的應用程序
- 使用安全:Windows窗體充分利用公共語言運行庫的安全特性。
- 操做方便:提供易於鏈接OLEDB和ODBC數據源的數據控件,包括Microsoft SQL Server、Microsoft Access、Jet、DB2以及Oracle等
- 控件靈活:Windows窗體提供了一套豐富的控件,而且開發人員能夠定義本身有特點的新的控件。
- 數據管理:方便的數據顯示和操做:應用程序開發中最多見的情形之一是在窗體上顯示數據。Windows窗體對數據庫處理提供全面支持。能夠訪問數據庫中的數據,並在窗體上顯示和操做數據。
- 嚮導明確:向用戶提供建立窗體、數據處理、打包和部署等的分佈指導。
二、WPF的特色:編程語言
- 功能和界面分離:程序人員與美工人員明確分工,美工人員可使用Expression Studio中套裝工具可視化的設計界面。而後交給程序開發組中的XAML就能夠。讓程序人員直接套用到開發環境,不須要想頁面怎麼切了。
- 矢量圖的超強支持:兼容支持2D繪圖,好比矩形、自定義路徑,位圖等。文字顯示的加強,XPS和消鋸齒。三維強大的支持。包括3D控件及事件,與2D及視頻合併打造更立 體效果。漸變、使用高精確的(ARGB)顏色,支持浮點類型的像素座標。
- 靈活、易擴展的動畫機制:.Net Framework 3.0類庫提供了強大的基類,只需繼承就能夠實現自定義程序使用繪製。接口設計很是直觀,徹底面向對象的對象模型。
- 可使用任何一種.Net編程語言:XAML主要針對界面的可視化控件描述,成生進會分析成.cs或.vb文件,並最後將編譯爲CLR中間運行語言。
3、該如何選擇
要考慮的問題:工具
- 考慮目標客戶機器配置以及系統
- 根據程序界面要求
- 項目屬於什麼類型,外觀仍是技術型
- 目標羣體是什麼樣的人
- 開發者是什麼樣的人
- 開發人員對Winform和WPF熟悉程度怎樣
-------------------------------------------------------------------------------------------動畫
從程序上講,都以事件的形式調用處理:spa
- winform開發上比WPF稍容易點,但總體上說其實沒多大區別。
- WPF基於directX,因此對於3D的處理更好,畫面也更加酷炫。
- winform的畫面設計採用與開發語言相同的語言實現,並保存在相同的代碼類型文件中,移植性很差。WPF的畫面採用XML形式書寫,保存在xml中,移植性更好,也更直觀易懂。
- 另有一點細微差異,就是winform的控件能夠疊放,如兩個button的座標能夠徹底同樣,只能看到上面的一個。而WPF的控件不能疊放,因此若是有兩個button位置相同,你必需要隱藏一個,不然兩個都會被看到。
- WPF用的MVVM模式
- winform用的事件驅動WPF有三種應用模式:應用、瀏覽應用、文檔應用。
- 應用就是通常的窗口應用,瀏覽應用就是象網頁同樣的一頁一頁的應用,文檔應用是用來顯示內容的瀏覽應用功能子集,而不是MVC模型。
- 通常應用其實也就是每一個頁面擁有一個獨立的窗口。
總結一下:.net
WinForm:界面+程序一我的能搞完
WPF:還得給大家這幫碼農配一個美工,固然若是你自己擅長美工的話,一我的也是沒有問題的。
winform窗體設計,企業管理系統界面設計參考:http://www.javashuo.com/article/p-ehmbknms-bp.html
WPF窗體設計,仿TIM QQ界面設計,參考:https://www.jianshu.com/p/d105e40a90d4
在Winform窗體中使用WPF控件,具體實現請轉至 https://www.cnblogs.com/DebugLZQ/archive/2012/05/19/2508846.html
WPF教程:http://www.javashuo.com/article/p-pvuoidvs-cn.html
注:以上文章有些描述是網上摘錄的,若有講述不對的,歡迎指出,感謝 !!!
原文出處:https://www.cnblogs.com/guhuazhen/p/11447634.html