2009-06-30 89 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与业务逻辑分开。