MissingMethodException - Caliburn

时间:2012-01-18 16:57:33

标签: c# .net wpf inversion-of-control caliburn

我创建了一个使用Caliburn和.NET 4插件的程序。

在创建插件实例时,使用caliburn的能力注入容器,窗口管理器和视图模型工厂。

但是,当运行包含其中一个注入属性的使用的代码时,我得到一个

  

MissingMethodException

。这让我发疯了。

此外,如果插件实例具有需要满足的依赖项(如IContainer和IWindowManager),这些依赖项在Caliburn中默认注册,则无法使用在IoC容器中找不到此类组件的消息创建它。

在调试模式下,我检查了所有内容,因此我不知道该怎么做。

您认为这可能是什么问题?

1 个答案:

答案 0 :(得分:0)

关于MissingMethodException,请确保XAML中的签名与方法的签名匹配。

例如,这在XAML中:

<DockPanel cal:Message.Attach=" [Event KeyDown] = [Action KeyDown($eventArgs)]">

匹配此方法:

public void KeyDown(KeyEventArgs args)
{
//stuff
}

如果删除$eventArgs位,则会出现异常。