使用Prism NavigationAsyncExtensions的RequestNavigate无法捕获ActivationException

时间:2012-11-14 17:09:02

标签: c# .net exception navigation prism

我在NavigationAsyncExtensions上使用Prism的RequestNavigate方法IRegion

// Attempt to navigate to the given view
try
{
    _mainRegion.RequestNavigate(viewName);
}
catch
{
    throw new MissingViewException(viewName);
}

我可以传递注册的视图名称并获得成功的导航。但是,当我传递未注册的视图名称时,我会在RequestNavigate上收到未处理的异常消息。我希望它失败(我希望能够捕获失败并抛出自定义异常),但我不能因为某些未知原因而捕获异常:

enter image description here

我尝试过几种选择:

  1. 首先抓住ActivationException
  2. 使用RequestNavigate并传递navigationCallback
  3. 使用RequestNavigate并传递navigationCallback(不使用try-catch块)。
  4. 没有其他选择有效。有没有人有任何想法/建议?提前致谢!我的直觉告诉我,这是某种类型的线程问题,因为扩展方法是异步的。但是我认为navigationCallback会处理这个问题,但结果却很不一样。

0 个答案:

没有答案