Wp8如何导航到另一个项目页面

时间:2013-11-08 09:40:43

标签: c# xaml windows-phone-8 navigation projects

我的问题是从原始项目导航到另一个项目文件“ChatMeApp / MainPage.xaml”。 我的代码是

private void GoToChat(object sender, EventArgs e)
{
    this.NavigationService.Navigate(new Uri("/ChatMeApp;component MainPage.xaml", UriKind.RelativeOrAbsolute));
} 

当我运行这个时,我在app.xaml.cs中得到一个异常,它在这里打破了

// Code to execute if a navigation fails
private void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
{
    if (System.Diagnostics.Debugger.IsAttached)
    {
        // A navigation has failed; break into the debugger
        System.Diagnostics.Debugger.Break();
    }
}

我是WP8开发的新手(来自c#背景)。 我见过的所有建议都让我认为这应该有用,任何人都可以看到问题或建议问题可能是什么。

3 个答案:

答案 0 :(得分:0)

我假设您正尝试导航到当前项目中的/MainPage.xaml 。在这种情况下,您可以使用以下代码实现目标。

private void GoToChat(object sender, EventArgs e)
{
    NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));
} 

如果您尝试导航到其他应用中的某个页面,则无法进行此操作。

答案 1 :(得分:0)

"组件"之后你有一个额外的空间。在乌里。

new Uri("/ChatMeApp;component/MainPage.xaml", UriKind.Relative));

答案 2 :(得分:0)

实际上您正试图导航到另一个程序集,您也可以通过下面粘贴的源代码实现此目的。

两种情况都粘贴在

之下
private void Button_Click_1(object sender, RoutedEventArgs e)
{
    //Navigate to a page in the current assembly
    NavigationService.Navigate(new Uri("/Page1.xaml", UriKind.Relative));
}

 private void Button_Click(object sender, RoutedEventArgs e)
{
    //Navigate to a page in an external referenced assembly
    NavigationService.Navigate(new Uri("/AnotherProject;component/MainPage.xaml",   UriKind.Relative));
}