K所以去年我在java中创建了一个家庭树程序作为一个小组项目,我们使用了MVC,但我真的忘记它是如何工作的,并且笔记不再在线了。
更糟糕的是,由于我们的项目不是很大,教授说将模型和控制器结合起来
所以现在我正在尝试将一个甜蜜的项目添加到我的就业能力组合中,我不知道MVC是如何运作的。
在下列情况下,我的关系在模型,视图和控制器之间会有什么样子,我可以从中找出其余部分
随着这些问题的解决,我很可能自己完成剩下的工作。
或者,如果有人知道任何有信息的好网站,我也不反对重新学习。
答案 0 :(得分:2)
以下是可能有用的CodeProject:http://www.codeproject.com/KB/cs/model_view_controller.aspx
答案 1 :(得分:1)
- 模型有一个名为location的状态,视图需要知道 当这个改变,所以它可以更新 它的显示
醇>
为View创建一个名为IMyScreen的界面或类似的东西 将方法UpdateLocation添加到接口或类似的东西 创建对IMyScreen类型的状态和视图可见的变量或属性函数。称之为MyScreen 让View实现IMyScreen并在UpdateLocation方法中更改Location状态时更新View所需的代码。 在View的初始化例程中,View将自身注册为当前的MyScreen。 修改使用Location的代码,以便在它发生更改时随时触发MyScreen.UpdateLocation。
理想情况下,View会创建一个Command对象来运行它的execute方法。 execute方法将引入所需的任何参数,修改locaction,然后调用MyScreen.UpdateLocation。但是你应该专注于一次改变一件事并保存以供日后使用。
- View有一个模型在点击时需要知道的按钮
醇>
这有点模糊。通常这样的按钮可以执行操作或指示状态(复选框,选项等)
如果它执行了操作,那么理想的方法是创建ICommand接口。 它有一个方法Execute。 使用初始化例程传递任何所需的参数。 在execute方法中放置修改模型所需的代码。 单击按钮时,它将执行类似
的操作Sub MyButton_Click
ModifyCommand ThisCommand = New ModifyCommand(Parm1, Parm2, Parm3)
ModifyCommand.Execute
End Sub
如果您需要查询按钮的状态,请使用IMyScreen界面并添加名为ButtonClicked的属性。 单击该按钮后,设置一个标记,表明它已在视图中单击 当模型需要知道按钮是否被点击时,它称为MyScreen.ButtonClicked。
答案 2 :(得分:0)
这是ASP.NET-MVC中的一个很好的例子:http://www.codeplex.com/mvcsamples。模型只是数据,视图是显示数据的UI代码,Controller决定要显示的视图。