我正在使用Panorama控件在Windows Phone 8中显示项目现在我想保存所选PanoramaItem的状态,并在导航回此页面时显示与默认相同的项目。就像我们将它保存在墓碑中一样。但在Windows Phone 8 Panorama中,selectedItem和SelectedIndex属于readonly属性,如下面的代码说明所示: 如何在Windows Phone 8 Panorama Control中实现此目的。
答案 0 :(得分:0)
您可以在SetValue
控件上使用Panorama
:
private const string SELECTED_PANORAMA_INDEX_KEY = "selectedPanoramaIndex";
protected override void OnNavigatedTo(NavigationEventArgs e)
{
// restore selected panorama item
if (State.ContainsKey(SELECTED_PANORAMA_INDEX_KEY))
{
int ndx = (int)State[SELECTED_PANORAMA_INDEX_KEY];
if(MainPanorama.SelectedIndex != ndx)
MainPanorama.SetValue(Panorama.SelectedItemProperty, MainPanorama.Items[ndx]);
}
}
protected override void OnNavigatedFrom(NavigationEventArgs e)
{
State[SELECTED_PANORAMA_INDEX_KEY] = MainPanorama.SelectedIndex;
base.OnNavigatedFrom(e);
}