在整个类中使用LoadStateEventArgs
本文关键字:LoadStateEventArgs | 更新日期: 2023-09-27 17:50:55
我是一个初学者在制作一个Windows商店应用程序。这个应用程序是基于c#和XAML。在第一页上的数据被发送到第二页上按下一个瓷砖。它会像这样给第二页一个参数:
void ItemView_ItemClick(object sender, ItemClickEventArgs e)
{
var groupId = ((ProductGroup)e.ClickedItem).UniqueId;
this.Frame.Navigate(typeof(GroupView), groupId);
}
在第二页上,我像这样检索groupId中给定的UniqueId:
private async void navigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
string uniqueId = ((string)e.NavigationParameter);
var result = await backEnd.getJsonData(uniqueId);
this.DefaultViewModel["Groups"] = result;
}
现在我想在整个页面中使用唯一的id。有人知道怎么做吗?
提前感谢!
有两种方法可以做到这一点:为页面中的UniqueId创建一个类变量,或者将值存储在某个地方,例如ViewModel。
试试这个:
private async void navigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
string uniqueId = ((string)e.NavigationParameter);
var result = await backEnd.getJsonData(uniqueId);
this.DefaultViewModel["Groups"] = result;
this.DefaultViewModel["UniqueId"] = uniqueId;
}
然后,当你需要返回并获取它时,只需使用:
this.DefaultViewModel["UniqueId"];
希望这有助于和快乐的编码!