2009-06-30 93 views
5

我想了解更多關於WPF的信息,我已經閱讀了一些關於Model-View-ViewModel(MVVM)的內容,但是如果我要創建一個WPF應用程序,我想我仍然會做一些事情,出於習慣,我在winforms中完成的方式。從我的理解中,最終將我編碼到一個角落。作爲wpf應用程序實現的winforms應用程序的示例?

因此,要我學習'正確'方法的一種方式是比較和對比現有的,簡單的winforms應用程序,它也是(正確)在wpf中實現的。

我不想找任何複雜的東西,也許只是幾個表格和一些控件。有沒有人知道這樣簡單的任何例子?

回答

4

結賬this video。他經歷了典型的Winforms思考,然後將其轉換爲WPF中的MVVM模式。 Source code也可用。

1

對於初學者,我建議創建一個測試WinForms項目和一個測試WPF項目。然後在每個表單上添加一個按鈕和一個文本框,並將WinForms應用程序中的「設計器生成的代碼」與WPF應用程序中的XAML進行比較。

然後,您可以在兩個項目中雙擊設計器窗口中的按鈕,VS將在WinForms和WPF中爲您的按鈕創建一個OnClick處理程序。這將允許您比較兩種平臺的事件處理功能。

我們碰到當我們第一次深入到WPF另一個常見問題是這一個:
XAML - get user control position relative to whole window as binding property
你會學到真快,有很多簡單的東西,比如位置,我們是用來做WinForms,但WPF中不再提供這些功能。

除此之外,我只是補充一點,WPF最大的學習曲線是設計順序與我們習慣的完全相反的事實。在WPF中,預計會創建應用程序的第一個的所有內部工作,然後將該代碼綁定到用戶界面秒。這將幫助你避免將自己編碼到像你所提到的角落,而不僅僅是其他任何東西。

0

看一看在CodePlex上的WPF期貨在這裏http://www.codeplex.com/wpf/Release/ProjectReleases.aspx?ReleaseId=14962和搶WPF模型 - 視圖 - 視圖模型工具包0.1

安裝這讓你在Visual Studio中,你可以用它來創建一個新項目的MVVM模板。

這是使用MVVM創建WPF應用程序的一個很好的起點。要記住的基本前提是,視圖(UI)和ModelView應儘可能通過數據綁定進行通信。

我發現這個模板真的很有用,而我試圖讓我的頭繞WPF。

0

你可能會看看WAF Windows Forms Adapter。它介紹了WPF和Windows窗體中的書庫示例應用程序。兩種實現都使用MVVM模式將UI與業務邏輯分開。