Xaml 滚动时将ListView.Header固定/粘滞/冻结到顶部

Xaml 滚动时将ListView.Header固定/粘滞/冻结到顶部,xaml,listview,xamarin,xamarin.forms,controls,Xaml,Listview,Xamarin,Xamarin.forms,Controls,当垂直向下滚动列表视图项时,如何将列表视图的内置标题冻结到顶部 在标记为重复之前:我尝试在针对Android的Xamarin.Forms中应用答案,但没有成功 简短代码示例: <ListView ItemsSource="{Binding MyList}" HasUnevenRows="True" SeparatorVisibility="Default"

当垂直向下滚动
列表视图
项时,如何将
列表视图的内置
标题
冻结到顶部

在标记为重复之前:我尝试在针对Android的Xamarin.Forms中应用答案,但没有成功

简短代码示例:

<ListView ItemsSource="{Binding MyList}"             
          HasUnevenRows="True"
          SeparatorVisibility="Default"
          CachingStrategy="RecycleElement">

    <ListView.Header>
        <Label HorizontalTextAlignment="Center"
               FontAttributes="Bold"
               Text="Header Title"/>
    </ListView.Header>
                
    <ListView.ItemTemplate>
        <DataTemplate>
            <ViewCell>
                <Label Text="{Binding Name}"/>
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

如果列表不长,这里有一种替代方法

<StackLayout>
        <Label HorizontalTextAlignment="Center"
               FontAttributes="Bold"
               Text="Header Title"/>
        <StackLayout BindableLayout.ItemsSource="{Binding MyList}">
            <BindableLayout.ItemTemplate>
                <DataTemplate>
                    <StackLayout>
                        <Label Text="{Binding Name}"/>
                        <!-- boxview as separator -->
                        <BoxView HeightRequest="1" Color="Aqua" HorizontalOptions="FillAndExpand"/>
                    </StackLayout>
                </DataTemplate>
            </BindableLayout.ItemTemplate>
        </StackLayout>
    </StackLayout>


谢谢您的回答,但我希望看到一个基于ListView内置标题的解决方案。默认ListView不支持Android中top中的fix Header,请看一下可能会有帮助。@JackHua MSFT也许我最好使用CollectionViewYes,collectionview可能是一个更好的选择。但它不会保存我的问题,因为现在我以为这样的功能已经在collectionview中实现了,但我错了,我看到有一个实现了粘性头的。