【问题标题】:Cannot navigate to another page无法导航到其他页面
【发布时间】:2012-09-10 20:01:51
【问题描述】:

我有一个按钮和一个被点击的事件:

private void btnSetLocationName_Click_1(object sender, RoutedEventArgs e)
    {
        ApplicationModel.LocationName = locationName.Text;
        Frame.Navigate(typeof(GroupsPage));
    }

我只想导航到另一个页面。不幸的是,Frame.Navigate 不起作用。我还尝试确保它在 GUI 线程中运行: await this.Dispatcher.RunAsync(CoreDispatcherPriority.High, () => Frame.Navigate(typeof(GroupsPage)));

但是,它应该这样做,因为按钮的单击处理程序在 GUI 线程中运行。

出现以下错误: 灾难性故障(HRESULT 异常:0x8000FFFF (E_UNEXPECTED))

【问题讨论】:

  • 您是否尝试过导航到一个简单的空白页面?尝试实例化 GroupsPage 时可能会引发异常?另外,GroupsPage.xaml 是否定义在同一个程序集中?
  • 您使用的是 RTM 版本的 Windows 8 吗?
  • 您好,是的,GroupsPage 在主程序集中,而且,我尝试创建一个单独的空白页(它不是从 LayoutAwarePage 继承的),但是它通过了 InitializeComponent,但随后它失败了。它是 Windows 8 RTM。

标签: xaml windows-8 windows-runtime winrt-xaml


【解决方案1】:

好的,在注释掉一些代码直到它起作用之后,结果我有一个空的 OnNavigatedTo 覆盖:

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    //base.OnNavigatedTo(e);
}

如果你取消注释 base.OnNavigatedTo 它现在可以工作了。

我认为让我感到震惊的是,从具有此空覆盖的页面导航时发生了错误。此外,神秘的错误消息并没有太大帮助。

【讨论】:

  • 感谢您回答问题!这很有帮助。
猜你喜欢
  • 1970-01-01
  • 2013-05-11
  • 1970-01-01
  • 1970-01-01
  • 2023-03-28
  • 1970-01-01
  • 2016-03-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多