Window Handle
Winform 底層依賴 Win32API ,WPF 底層依賴 Dorect3D
Winform 會為每個元件建立一個視窗,而 Wpf 只會建立一個主視窗
所以當開發複雜的 GUI 時,會使用到大量的控件,如 Grid ,而每個 Cell 控件都是一個小視窗,即使盡可能優化,但還是會遇到 Out of Memory 或 Err Create Window handle。
Visual Studio 2019 安裝 Spy++
建立 兩個 TextBox 與 Button 後,啟動 Spy++ 可以看到差異
WinForm 會顯示一個主視窗與兩個子視窗
在 WPF 則只有一個主視窗
MVVM
WPF 提供 MVVM 的架構
在 WinForm 提供事件的方式與資料作互動,但在 WPF 提供另一個方式,在 View 定義 ViewModel,讓他可以與 Model 互動,藉此更新資料。
參考文章
https://blog.csdn.net/Andrewniu/article/details/52247475
感謝分享~