我们正在使用MVP模式,我想知道如何处理GUI操作.
例如,当用户想要从网格中删除行时,用户按下删除按钮.此时你可以做两件事:
1)呼叫_presenter.DeleteRow(),然后主持人呼叫_view.SelectedRow.然后演示者调用view.AskUserForConfirmation(),当它返回时DialogResult.OK,演示者实际上删除底层对象并刷新网格.
2)该表格要求用户进行确认,并且当DialogResult是OK,那么presenter.Delete(myObject)被称为OR presenter.Delete()被称为和内Delete方法的对象是通过调用检索_view.SelectedRow.
你如何处理这些情况?
MVP 模式应该将逻辑、视图和数据访问分开。因此,当试图决定某件事应该去哪里时,问问自己你想做的事情是否有实际的业务逻辑。
您希望您的业务层具有显示弹出窗口的逻辑吗?可能不会。这只是一条确认消息。您可能想要一个帮助程序类来生成您的风格化弹出窗口,但它与您的 Presenter 层是分开的。
| 归档时间: |
|
| 查看次数: |
645 次 |
| 最近记录: |