【发布时间】:2011-05-10 12:36:59
【问题描述】:
一个“简单”的情况:
Assembly1 包含:
- 几个 WPF 页面 (.xaml)
调用程序集包含:
- 带有
ElementHost的 WinForm - ElementHost 包含一个 WPF
UserControl,它有一个 Frame (=MainFrame)
WinForm 使用 MainFrame 中的 NavigationService 导航到绝对 Uri,如下所示:
NavigationService.Navigate(new Uri("pack://application:,,,/Assembly1;component/Page1.xaml", UriKind.Absolute);
显示导航页面,到目前为止一切正常。现在,当我查看 NavigationService.CurrentSource(这是当前加载页面的 Uri)时,它看起来像这样:
各种异常...而且奇怪的是IsRelative 属性是True 和OriginalString 属性状态:“/Assembly1;component/Page1.xaml”。整个“包装部分”都丢失了。所以当再次使用 Uri 时(我想要的)会导致错误,因为这个 Uri 不再给我一个正确的路径。
我是否缺少 WPF 中 NavigationModel 的一些重要部分?任何帮助将不胜感激!
【问题讨论】:
-
引用:“所以当再次使用 Uri 时(我想要的)会导致错误,因为这个 Uri 不再给我正确的路径”-> 似乎不对,这仍然有效。 Uri 看起来乱七八糟的,我仍然觉得很奇怪。
标签: wpf navigation uri