我知道如何在数据透视页面内从一个数据透视项导航到另一个数据透视项,但是如果导航完全是从另一个页面启动的呢?
更新:
这是我使用的解决方案,基于 Matt Lacey 的回答:
从 MainPage 上的按钮单击事件:
private void button_Click(object sender, RoutedEventArgs e)
{
string parameter = "myPivotItem1";
NavigationService.Navigate(new Uri(string.Format("/MyPivotPage.xaml?parameter={0}", parameter), UriKind.Relative));
}
覆盖数据透视页面的 OnNavigatedTo,并提取查询字符串:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
string newparameter = this.NavigationContext.QueryString["parameter"];
if (newparameter.Equals("myPivotItem1"))
{
myPivotControl.SelectedItem = myPivotItem1;
}
else if (newparameter.Equals("myPivotItem2"))
{
myPivotControl.SelectedItem = myPivotItem2;
}
}
最佳答案
您可以设置 SelectedIndex
到您想要的项目的索引。
不过要小心元素的延迟加载。
更新:
在第一页上,传递一个指示符,指示要在您导航到的页面的查询字符串** 中显示哪个 pivotItem。
在包含枢轴的页面上的 OnNavigatedTo 事件中,为 Pivot 的 Loaded 事件创建一个处理程序,并使用它来设置 SelectedIndex。
** 可以使用其他方法来执行此操作。
关于windows-phone-7 - 有没有办法指定要在数据透视页面中导航到哪个数据透视项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6842785/