Windows Phone Dev c#:在页面之间发送信息

本文关键字:之间 信息 Phone Dev Windows | 更新日期: 2023-09-27 17:52:56

我试图在两个页面之间发送几个字符串。然而,接收页面只将其解释为一个。有什么建议吗?

第1页

private void button1_Click(object sender, RoutedEventArgs e)
        {
            string urlofdestinationpage = "/Page1.xaml";
            urlofdestinationpage += string.Format("?SelectedIndex=" + playersList.SelectedIndex);
            urlofdestinationpage += string.Format("?Player1=" + textBox1.Text);
            NavigationService.Navigate(new Uri(urlofdestinationpage, UriKind.Relative));
        }

第2页

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            IDictionary<string, string> x = this.NavigationContext.QueryString;
            String size = Convert.ToString(x["SelectedIndex"]);
            MessageBox.Show(size);
String player = Convert.ToString(x["Player1"]);
                MessageBox.Show(player1);
            base.OnNavigatedTo(e);
        }

接收页输出消息"0?"Player1="并且不识别Player1作为值。

帮忙吗?

Windows Phone Dev c#:在页面之间发送信息

您的URI格式不正确。?为参数的开头,各参数之间用&隔开。

你正在构造的URI是:

Page1.xaml SelectedIndex = 0 ? Player1 =…

你应该构造的URI是:

Page1.xaml ? SelectedIndex = 0, Player1 =…

private void button1_Click(object sender, RoutedEventArgs e)
{
    string urlofdestinationpage = "/Page1.xaml";
    urlofdestinationpage += string.Format("?SelectedIndex=" + playersList.SelectedIndex);
    urlofdestinationpage += string.Format("&Player1=" + textBox1.Text);
    NavigationService.Navigate(new Uri(urlofdestinationpage, UriKind.Relative));
}

应该在第二个参数和任何其他参数之间加上&不呢?就像在URL:/Page1.xml?param1=x&param2=y