【发布时间】:2011-01-05 19:15:31
【问题描述】:
我得到了一个使用 C# 制作桌面应用程序的任务。它必须使用 MVC 设计模式来完成,但我找不到任何教程可以展示如何使用基于桌面的应用程序来完成它。我能找到的所有教程都展示了如何为 web (asp.net) 做这件事。
所以我想知道是否有人可以向我推荐一本这样做的书或在线教程?
【问题讨论】:
标签: c# database model-view-controller desktop
我得到了一个使用 C# 制作桌面应用程序的任务。它必须使用 MVC 设计模式来完成,但我找不到任何教程可以展示如何使用基于桌面的应用程序来完成它。我能找到的所有教程都展示了如何为 web (asp.net) 做这件事。
所以我想知道是否有人可以向我推荐一本这样做的书或在线教程?
【问题讨论】:
标签: c# database model-view-controller desktop
我总是通过这样做来学习这是一个非常基本的示例。 Web 或 Windows,没关系...
型号
// basic template for what your view will do
public interface IProgram
{
public string FirstName { get; set; }
}
查看
public class Program : IProgram
{
ProgramController _controller;
public Program()
{
// pass itself to the controller
_controller = new ProgramController(this);
}
public string FirstName
{
get { return firstNameTextBox.Value; }
set { firstNameTextBox.Value = value; }
}
}
控制器
public class ProgramController
{
IProgramView _view;
public ProgramController(IProgramView view)
{
// now the controller has access to _view.FirstName
// to push data to and get data from
_view = view;
}
}
您可以通过这种方式绑定任何成员,例如事件
【讨论】:
既然这是作业,我相信您老师,更重要的是您自己,渴望学习 MVC 背后的技巧。因此,虽然检查 MVC 框架可能会有所帮助,但我建议您自己实现基本功能。
也就是说,先看看Wikipedia's article(不幸的是,这不是那么好),然后检查Microsoft's take。
一旦你掌握了这些概念,试着实现一个基本的三元组来做“一些事情”,没什么特别的。如果您有疑问,请返回 SO,以便我们届时解决。并且不要忘记 SO 的新 chat functionality。
【讨论】:
您可能会考虑几种不同的途径。
【讨论】: