我正在尝试停止在我的Windows 10 UWP应用程序中循环Pivot Control。 我找不到任何解决办法。
任何人都有任何想法停止循环枢轴控制。
我也想停止直接导航。 假设,我的枢轴中有6个Pivot项目,我不想直接跳转到Pivot Item 1到Pivot Item 4.它应该是前进过程,即Pivotitem 1到PivotItem 2或PivotItem 2到PivotItem 3。
我尝试选择更改了Pivot Control的事件,但它对我没有用。
var currentPivot = ((Pivot)sender);
var count = e.AddedItems.Count;
if ((currentPivot.SelectedIndex) > count)
{
Pager.SelectedIndex = count - 1;
}
任何回复都将不胜感激!
答案 0 :(得分:0)
如果您不想拥有循环行为,可以使用FlipView并将其样式更改为看起来像pivot。
答案 1 :(得分:0)
我是这样做的:
ManipulationMode="TranslateX"
我的支点现在看起来像:
<Pivot ManipulationMode="TranslateX" x:Name="testPivot" ManipulationDelta="testPivot_ManipulationDelta" ManipulationCompleted="testPivot_ManipulationCompleted">
<PivotItem Header="Page1" ></PivotItem>
<PivotItem Header="Page2"></PivotItem>
<PivotItem Header="Page3"></PivotItem>
</Pivot>
我看起来如此:
double xDelta = 0;
private void testPivot_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
{
xDelta += e.Delta.Translation.X;
}
private void testPivot_ManipulationCompleted(object sender, ManipulationCompletedRoutedEventArgs e)
{
if(xDelta > 0)
{
if (testPivot.SelectedIndex > 0)
testPivot.SelectedIndex--;
}
else
{
if(xDelta < 0)
if (testPivot.SelectedIndex < testPivot.Items.Count() - 1)
testPivot.SelectedIndex++;
}
xDelta = 0;
e.Handled = true;
}
答案 2 :(得分:0)
使用此代码。我希望这对所需的全部逻辑有所帮助。
这里的构造函数:
if (pivot.SelectedIndex == 0 && previousSelectedIndex == <number Of screens - 1>)
pivot.SelectedIndex = <number Of screens - 1>;
previousSelectedIndex = pivot.SelectedIndex;
枢轴选择的事件监听器已更改:
jQuery(function(){
if(window.location.hash){ //<------if hash values are location then only executes
var target = "archive-tracks";
jQuery('html, body').animate({
scrollTop: jQuery('#'+target).offset().top
}, 1500,'swing');
return false;
}
});
答案 3 :(得分:0)
从SDK 14393,Win10 1607开始,现在可以:
<Pivot IsHeaderItemsCarouselEnabled="False"/>