是否可以通过按钮单击事件导航到枢轴控制页面

时间:2011-03-03 05:06:26

标签: c# silverlight windows-phone-7 pivot

我正在尝试创建一个wp7 pivot控件应用程序。单击第一页中的按钮,我想导航到另一个已经是枢轴页面的页面。有可能吗?

6 个答案:

答案 0 :(得分:33)

如果您有以下Pivot控件的定义:

 <controls:Pivot x:Name="SettingsPivot" Title="settings">
   <controls:PivotItem x:Name="GeneralSettings" Header="general settings">
     <!-- Pivot Item content -->
   </controls:PivotItem>
   <controls:PivotItem x:Name="ConnectivitySettings" Header="connectivity settings">
     <!-- Pivot Item content -->
   </controls:PivotItem>
   <controls:PivotItem x:Name="OtherSettings" Header="other settings">
     <!-- Pivot Item content -->
   </controls:PivotItem>
 </controls:Pivot>

然后您可以在按钮单击事件处理程序中使用此代码转到例如OtherSettings:

SettingsPivot.SelectedItem = OtherSettings;

答案 1 :(得分:6)

这样做

NavigationService.Navigate(new Uri("/Pages/Page.xaml?PivotMain.SelectedIndex = 0", UriKind.Relative));

SelectedIndex可以是任何因素,具体取决于您拥有的枢轴项目数

答案 2 :(得分:3)

以下是您可以导航到另一个页面的方式,如果它是一个数据透视页面并不重要:

NavigationService.Navigate(new Uri("/SettingsPivot.xaml", UriKind.Relative));

如果您尝试导航到另一个 pivotitem ,则需要执行以下操作

int i=1; //This is the index of the pivotitem you would like to navigate to

PivotMenuName.SelectedIndex = i;

答案 3 :(得分:2)

听起来你想要第二段代码。如果您的Pivot有2个项目(比如item1,item2),那么要从item1导航到item2,您将使用:

MyPivot.SelectedIndex = IndexOfPageToGoTo;

查看这个演示它的快速示例。

http://dl.dropbox.com/u/129101/WindowsPhonePivotApplication1.zip

也就是说,如果您将它用于“向导”式应用程序,则不建议这样做。见http://timheuer.com/blog/archive/2010/08/13/windows-phone-panorama-versus-pivot-ux-guidelines.aspx

答案 4 :(得分:0)

NavigationService.Navigate(new Uri("MainPage.xaml?PivotMain.SelectedIndex = 0", UriKind.Relative));

索引为0-1-2-3 ...写下你要导航的那个。

答案 5 :(得分:0)

如果您已动态创建透视项目,则可以使用以下简单代码:

// This find object named as customName
object pvtItm = pivotName.FindName("customName");

// If this object has type of PivotItem, navigate to it
if (pvtItm is PivotItem)
{
    pivotName.SelectedItem = pvtItm;
}