3

我正在实现一个事件结构来将信息从视图传递给演示者。在视图中,单击按钮时会调用以下代码:

private void alterCmpd1()
{
    EventHandler AlterEvent = AlterCompound1_Action;
    if (AlterEvent != null) AlterEvent(this, EventArgs.Empty);
}

public event EventHandler AlterCompound1_Action;

出于某种原因,NotImplementedException 总是出现在:

AlertEvent(this, EventArgs.Empty);

有人可以帮我弄清楚为什么吗?

Presenter 类的代码:

    public MainPresenter(IMainView view, IModel model)
    {
        this.view = view;
        this.view.AlterCompound1_Action += new EventHandler(view_AlterCompound1);
        this.model = model;
        view.Show();
    }

    void view_AlterCompound1(object sender, EventArgs e)
    {
        // I commented out this code, on the off
        // chance that it was affecting things. Still no luck.
    }
4

2 回答 2

5

90%肯定如果你看你会发现这个。

private void AlterCompound1_Action(object, EventArgs e)
{
    throw new NotImplementedException();
}
于 2012-08-09T20:18:32.107 回答
1

多亏了威尔,我才意识到自己犯的错误。我一直在使用“构建解决方案”工具,但我忽略了查看 Visual Studio 2010 的构建配置管理器(构建 -> 配置管理器)。在那里,我发现了这个:

VS2010配置管理器截图

之前,其中一些 Build 列复选标记(对应于我正在编辑的项目,例如 QAz.Presenter 和 QAz.View)没有被选中,因此“构建解决方案”正在跳过它们。选择这些项目后,Visual Studio 在我运行解决方案时就知道要构建它们。

于 2012-08-11T16:16:55.697 回答