Model view controller MVC中的复杂视图

Model view controller MVC中的复杂视图,model-view-controller,Model View Controller,在MVC模型中,当视图足够复杂时,视图在模型之间有何区别 我的问题源于我试图开发一个带有画布视图的桌面应用程序。用户具有单击模式(例如,选择、添加对象a、添加对象B、添加对象C等)。执行操作时,这会更改模型中的数据。模型的状态可以稍后通过另一个视图控件保存到文件中 启动项目时,我尝试将尽可能多的画布特定状态封装到画布视图中。然而,当我尝试适应MVC模式时,它似乎大部分属于模型 我觉得Canvas类非常复杂,足以包含它自己的状态,这就是我的困惑所在。它包含画布上几种类型对象的位置。视图数据和模型数

在MVC模型中,当视图足够复杂时,视图在模型之间有何区别

我的问题源于我试图开发一个带有画布视图的桌面应用程序。用户具有单击模式(例如,选择、添加对象a、添加对象B、添加对象C等)。执行操作时,这会更改模型中的数据。模型的状态可以稍后通过另一个视图控件保存到文件中

启动项目时,我尝试将尽可能多的画布特定状态封装到画布视图中。然而,当我尝试适应MVC模式时,它似乎大部分属于模型


我觉得Canvas类非常复杂,足以包含它自己的状态,这就是我的困惑所在。它包含画布上几种类型对象的位置。视图数据和模型数据之间的边界在哪里?或者这是一个MVC中存在MVC的情况(即MVC)?

在研究了一些模式之后,我选择了MVVM。这似乎正是我所需要的。ViewModels保存特定于视图或控件的数据,这些数据将永远不会保存,但仍需要由UI绑定。

扩展问题:如果我有如上所述的画布的单击模式,且不会持久存储,这应该传达给模型或控制器吗?在研究了一些模式之后,我选择了MVVM。这似乎正是我所需要的。ViewModels保存特定于视图或控件的数据,这些数据永远不会保存,但仍需要由UI绑定。