我正在制作通用应用。对于Windows手机部分,我已经在其中实现了一个数据透视页面。现在我想要禁用枢轴页面中的滑动手势(用于导航不同的枢轴项目),以便仅在点击第一个PivotItem上的按钮时显示第二个PivotItem。我尝试将Pivot控件的IsHitTestVisible属性设置为false,但然后阻止所有PivotItem。
答案 0 :(得分:1)
它违反 WINDOWS用户界面指南,不应该真正实现。
然而,为了理论,如果没有别的,你可以做这样的事情。
考虑您有5个透视项目,将您的第一个和最后一个PivotItem命名为
<controls:PivotItem Header="Item1" Name="first">
...
<controls:PivotItem Header="Item5" Name="last">
处理Pivot的LoadingPivotItem
和LoadedPivotItem
事件。然后你可以这样做:
//class level variable we use for the current pivot
PivotItem currentItem = null;
private void Pivot_LoadingPivotItem(object sender, PivotItemEventArgs e)
{
//if the next item is going to be "first" pivot
//and the previous item was the "last" pivot...
if (e.Item == first && currentItem == last)
{
//...reset the Pivot back to the last one.
mainPivot.SelectedItem = last;
}
//same theory as above but checking if we're
//sliding to the last one from the first one
if (e.Item == last && currentItem == first)
{
mainPivot.SelectedItem = first;
}
}
private void mainPivot_LoadedPivotItem(object sender, PivotItemEventArgs e)
{
//once the pivot is loaded, update the currentItem
currentItem = e.Item;
}
希望这有效.. 对于任何查询..还原。