导航到特定的PivotItem

Dee*_*har 4 c# windows-phone-8

当我点击主页面上的图像时,如何导航到数据透视页面的特定数据透视表?

主页上的图像的XAML代码如下

 <Image  Source="Assets/5.jpg" Stretch="UniformToFill" Height="150" Width="150" Margin="12,12,0,0"/>
Run Code Online (Sandbox Code Playgroud)

而Pivot-Page的代码如下

<phone:PivotItem Header="fifth">
    ..........         
    ..........                      
        </phone:PivotItem>
Run Code Online (Sandbox Code Playgroud)

当我点击主页面上的图像时,我想导航到第五个Pivot-Item.

AD.*_*Net 7

枢轴控件具有类似的属性SelectedItemSelectedIndex可以设置为执行此操作的属性.

<phone:Pivot x:Name="pvControl">
<phone:PivotItem x:Name="piFive" Header="fifth">
    ..........         
    ..........                      
        </phone:PivotItem>

pvControl.SelectedItem = piFive;
Run Code Online (Sandbox Code Playgroud)


pat*_*n91 7

您可能希望在导航栏中发送PivotItem要导航到的索引(如果您的Pivot是静态PivotItem的)

所以你想要导航到FIFTH PivotItem,那么你可能想要传递一个导航参数,其索引为PivotItem(即4).在您的PivotItem页面中,您将从传递的参数中获取索引并选择PivotItem使用该属性SelectedIndex

例如,您Pivot包含在内PivotPage.xaml,那么您可能希望导航到该页面(当然,您将导航调用添加到图像点击事件处理程序):

this.NavigationService.Navigate(new Uri("/PivotPage.xaml?item=4", UriKind.RelativeOrAbsolute));
Run Code Online (Sandbox Code Playgroud)

item=4 是你的导航参数

然后在你的PivotPage.xaml代码隐藏中,添加一个覆盖OnNavigateTo()方法PhoneApplicationPage,如下所示:

protected override void OnNavigatedTo(NavigationEventArgs e)
{
        base.OnNavigatedTo(e);
        if (NavigationContext.QueryString.ContainsKey("item"))
        {
            var index = NavigationContext.QueryString["item"];
            var indexParsed = int.Parse(index);
            Pivot.SelectedIndex = indexParsed;
        }
}
Run Code Online (Sandbox Code Playgroud)