Listview 列表视图Y滚动位置

Listview 列表视图Y滚动位置,listview,xamarin.forms,Listview,Xamarin.forms,有没有办法获得listview的滚动位置?我的目标是在用户滚动listview时更改图像的TranslationY属性。在使用scrollview之前,我已经做到了这一点: outerScrollView.Scrolled += (sender, e) => { var imageHeight = 800; var scrollRegion = layeringGrid.Height - outerScrollView.Height; var parallexReg

有没有办法获得listview的滚动位置?我的目标是在用户滚动listview时更改图像的TranslationY属性。在使用scrollview之前,我已经做到了这一点:

outerScrollView.Scrolled += (sender, e) => {
    var imageHeight = 800;
    var scrollRegion = layeringGrid.Height - outerScrollView.Height;
    var parallexRegion = imageHeight - outerScrollView.Height;
    var factor = outerScrollView.ScrollY - parallexRegion * (outerScrollView.ScrollY / scrollRegion);
    imagesCarousel.TranslationY = factor;
};
但是,listview不包含滚动事件


提前感谢。

ListView默认有一个滚动条,不知道为什么ListView不包含滚动条事件

但是,如果默认情况下ListView没有滚动条,则必须创建一个滚动条,在xml中覆盖ListView,如下所示:

<ScrollView x:Name="outerScrollView">
    <ListView 
        x:Name="ItemsListView"  
        ItemsSource="{Binding Messages}" 
        HasUnevenRows="True" 
        />
</ScrollView>
outerScrollView.Scrolled += (sender, e) => {
    var imageHeight = 800;
    var scrollRegion = layeringGrid.Height - e.Height;
    var parallexRegion = imageHeight - e.Height;
    var factor = e.ScrollY - parallexRegion * (e.ScrollY / scrollRegion);
    imagesCarousel.TranslationY = factor;
};
这就是你的滚动垂直位置


如果这个答案对你有用,别忘了接受它,并给它投票!!谢谢:)

此链接将为您提供一个起点: