我正在尝试研究如何将字符串值从一个 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/