Winform MVP,在视图界面中公开用户控件?

时间:2019-05-05 07:25:12

标签: winforms mvp

我正在尝试将Winform UI项目转换为使用MVP方法,但是我仍然坚持如何实现它。我有一个包含标题和flexgrid(ComponentOne)的表单/视图。标题包含标题,并在焦点对准表单时更改颜色。网格包含主要模型数据,用户可以与单元交互(选择单个/范围等)。该代码可以获取并设置单元格的值,还可以处理诸如选择更改和单元格编辑之类的网格事件。

问题是: 1)我可以在视图界面(IView)中将flexgrid控件公开为属性吗?还是我必须在界面中包装网格属性和方法?

2)由于标题焦点的颜色变化是纯粹基于视图的,将代码保留在(被动)视图中并在视图界面中忽略它有意义吗?

3)我应该在哪里画出视图界面中可以显示的内容与不应该出现的内容?

在问题1中,如果我在视图界面中公开flexgrid组件,则演示者可以直接修改网格,也可以处理网格事件。

我逐页浏览了Winform MVP示例,但都显示了带有文本框和按钮的简单对话框类型表单。所有这些都可以轻松地包装为简单的属性和事件。

2019年5月5日更新: 我发现了一个带有datagrid的MVP示例,其中视图界面未公开datagrid本身。只有少数几种方法可以从指定的单元格(其中包括)获得价值。在这种方法中,我必须包装来自c1flexgrid的一堆方法和属性才能使用。这是MVP的预期方法吗? 链接:Post with mvp datagrid sample

谢谢, HL

0 个答案:

没有答案