2009-04-17 95 views
1

我有一个MVP Gui,现在我想为某些视图定义某些操作或命令(修改,保存,关闭...)。这是命令模式吗?

有没有简单的方法来做到这一点?我应该为每个视图提供命令吗?

+0

MVP听起来像你正在使用WPF?你有没有研究WPF的指挥架构? – 2009-04-17 12:25:19

回答

3

最简单的方法是建立一个工厂,在其中实例化所有的命令对象。所以如果你有一个开放的Job Command,所有的视图都会到达工厂,然后取出Open Job Command对象,实例化它,然后执行它。如果您需要修复错误或更改打开作业命令,那么您只需要为所有视图执行一个点。

有人说,将有一些命令,可能是唯一的每个视图。尽管如此,您仍然可能想要将这些封装在命令对象中,因为您可以轻松实现使用命令对象执行的所有操作的撤销/重做。