c# - 在 Windows Phone 项目中将值从一个页面传递到另一个页面

标签 c# xaml windows-phone-8.1 data-transfer

我正在尝试研究如何将字符串值从一个 Windows Phone 应用程序页面传输到下一个,遵循 this article但我收到一条错误消息,内容为“名称‘NavigationService’在当前上下文中不存在”。

page1 上有一个文本框和一个按钮。第 2 页上只有一个 TEXTBLOCK。我希望在第 1 页的文本框中输入一个字符串,当单击按钮时,第 2 页会显示第 2 页的文本 block 中的文本框(第 1 页)中的文本2.

对于页面 1 中的按钮点击,我输入了这个:

private void Button_Click(object sender, RoutedEventArgs e)
{

    NavigationService.Navigate(new Uri("/Page2.xaml?msg=" + Texbox_page1.Text, UriKind.Relative));

}

在 OnNavigatedTo 方法中,在第 2 页,我输入了

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

    string msg = "";

    if (NavigationContext.QueryString.TryGetValue("msg", out msg))
    {
        Textblock_nickname_display.Text = msg;
    }
}

我错过了什么?如果有更简单的方法,请分享!

我花了将近 4 个小时试图解决这个问题,观看 YouTube 视频等等!

提前致谢!

最佳答案

确保你有

using System.Windows.Navigation;

另外,确保您的页面继承自正确的基类。

public class SecondPage : PhoneApplicationPage
{

...

}

编辑: 在解决方案资源管理器中右键单击您的项目,然后单击添加 > 引用并搜索 PresentationFramework。添加该引用应该会为您提供所需的命名空间。

关于c# - 在 Windows Phone 项目中将值从一个页面传递到另一个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28997584/

相关文章:

c# - Universal Metro 应用程序和后台任务

c# - 在 Windows Phone 8.1 通用应用程序中设置起始页

windows - 为什么 ContentDialog 中的 TextBox 不自动滚动到键盘上方

c# - 如何在单元测试中使用 Moq 和 DbFunctions 来防止 NotSupportedException?

c# - 将 DependencyProperty 的值设置为 ViewModel 属性

c# - 弯引号 vs 方引号,有何区别?

c# - 当 ContentControl.Content 改变时开始动画

c# - UWP ProgressBar 和绑定(bind)

C# 如何在偏移处写入一个字节?

c# - 从服务器端 ASP.Net 将 Javascript 函数绑定(bind)到 TreeView CheckBox