将数据从数据透视页传递到特定的全景项目
本文关键字:数据 全景 项目 透视 | 更新日期: 2023-09-27 17:57:55
我正试图将数据从数据透视页传递到Windows Phone应用程序中全景图中的特定点,但它不起作用。
我在数据透视页面中创建了一个文本框,用户必须在其中输入名称。一旦用户点击保存按钮(位于应用程序栏中),名称就会转移到文本块(位于全景中)。不幸的是,这不起作用,因为当我输入名称时,应用程序会返回到全景的主页面,并且不会显示保存的名称。
这是我尝试的代码:
数据透视页中的代码:
private void SaveNewName(object sender, System.EventArgs e)
{
// TODO: Add event handler implementation here.
string NewName;
NewName = NameBox.Text;
NavigationService.Navigate(new Uri("/MainPage.xaml?msg="+ NewName, UriKind.Relative) );
}
全景图中的代码(MainPage.xaml.cs):
protected override void OnNavigatedTo(NavigationEventArgs e)
{
/*if (!App.ViewModel.IsDataLoaded)
{
App.ViewModel.LoadData();
}*/
base.OnNavigatedTo(e);
string msg = "";
if(NavigationContext.QueryString.TryGetValue(msg, out msg))
{
displayName.Text = msg;
}
}
您将密钥指定为空字符串变量,而不是在Uri中使用的密钥,然后尝试向其写回。
NavigationContext.QueryString.TryGetValue("msg", out msg)
很可能会成功。还值得将导航键定义为常量,然后在Uri创建和字典填充中引用它们。