如何在Xamarin.forms中的CarouselPage中以编程方式更改页面?

时间:2015-07-11 18:01:41

标签: c# xamarin.ios xamarin.forms carousel c#-3.0

我正在使用CarouselPage类在Xamarin.Forms中实现Horizo​​ntal Slider。 我将使CarouselPage类从点击页面移动到下一页,而不是滑动。

有可能吗?任何人都可以帮助我吗?

提前致谢。

1 个答案:

答案 0 :(得分:13)

您可以将TapGestureRecognizer添加到您的页面并连接它以更改CarouselPage的CurrentPage。下面是我写的一个扩展方法,用于将CarouselPage的当前页面索引向右移动。从连接到子页面的TapGestureRecognizer调用此方法应该可以提供所需的功能。

public static void PageRight(this CarouselPage carouselPage)
{
    var pageCount = carouselPage.Children.Count;
    if (pageCount < 2) 
        return;

    var index = carouselPage.Children.IndexOf(carouselPage.CurrentPage);
    index++;
    if (index >= pageCount) 
        index = 0;

    carouselPage.CurrentPage = carouselPage.Children[index];
}