希望这张图片在这里可以阅读......

这是我第一个实现 MVP 的项目。我有三个班。我的主要形式,恰当地命名为FrmMain, FrmMainPresenter,然后MainOps它有一些额外的东西。
在 上FrmMain,我有对 的参考FrmMainPresenter,并且在FrmMainPresenter我对 有参考FrmMain。
上的事件FrmMain调用 上的方法FrmMainPresenter。
FrmMainPresenter应该从引用中获取控件并FrmMain调用MainOps接受 aGridControl和的方法Collection<Control>。
但是,在尝试访问适当的 Grid 和 CollectionFrmMainPresenter时,它告诉我FrmMain不包含这些控件的定义
代码FrmMain:
private void genericCheckbox_CheckedChanged(object sender, EventArgs e)
{
_presenter.CheckBoxCheckedChanged();
}
代码FrmMainPresenter:
public void CheckBoxCheckedChanged()
{
if (!_view.SuppressCheckedChanged)
_mo.UpdateFilter(_view.gdcSVNDefaultView, _view.Controls);
}
不知道我做错了什么。我不认为这是正确的,但我唯一的猜测是在 Designer 文件中将必要的控件设置为 public,但这不起作用。结果相同。
我想问题是因为我的表单界面没有定义 gridview / controls 集合,我的演示者类看不到它。但即便如此,我也不确定如何在界面中正确定义它,以便可以在表单上实现它。