Windows Phone 8设置导航URI

时间:2013-04-24 19:27:17

标签: c# windows-phone-8

我正在设置一系列按钮,一个用于表格中的每个项目。我需要做的是为每个按钮设置Navigate参数,无论如何,我可以从.cs代码设置以下内容吗?:

<ec:NavigateToPageAction TargetPage="/MissionPage.xaml"/>

这是我用来制作按钮的代码:

foreach (string i in missionQ)
        {
            Button btn = new Button() { Content = "Run", Width=120, Height=90 };
            btn.HorizontalAlignment = System.Windows.HorizontalAlignment.Right;
            btn.VerticalAlignment = System.Windows.VerticalAlignment.Top;
            btn.Margin = new Thickness(0, (100*x), 20, 0); }

2 个答案:

答案 0 :(得分:1)

您可以在按钮的Click事件中尝试此代码

using System.Windows.Navigation;

private void Button_Click(object sender, RoutedEventArgs e)
    {
        NavigationService.Navigate(new Uri("/MissionPage.xaml.xaml", UriKind.Relative));
    }

参考:NavigationService Class

答案 1 :(得分:0)

我要处理的方法是,为每个按钮上的tap事件创建一个新的eventhandler。传递i作为函数的参考。

btn.Tap += functionToHandleTap(i);

在自我的函数中,我将创建一个switch或if语句,然后根据传递给funtionToHandleTap的i参数进行导航。

        private void functionToHandleTap(string i)
    {
        string naviString = string.Empty;

        if (i == "something")
        {
            naviString = "some xaml here";
        }
        else
        {
            naviString = "another xaml here";
        }

        _rootFrame.Navigate(new Uri(naviString, UriKind.Relative));
    }