在整个类中使用LoadStateEventArgs e

时间:2014-03-19 15:26:03

标签: c# windows-store-apps

我是制作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;
}

现在我想在整个页面中使用uniqueId。有谁知道怎么做?

提前致谢!

1 个答案:

答案 0 :(得分:0)

有两种方法可以做到这一点:只为页面中的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"];

希望这有助于编码!