小编Kni*_*ele的帖子

Xamarin.Forms - 将 CollectionView 的高度调整为适合儿童的最小尺寸

我有一个 CollectionView,其中有一些项目。我正在尝试将 CollectionView 的大小调整为足够大以适合其所有子项。现在,它比它拥有的孩子数量要多得多。 在此输入图像描述

蓝色代表 CollectionView 的大小。正如您所看到的,它远远超出了它的子级的大小。我希望它能够完美贴合它们,或者至少接近相同的尺寸。

我对页面上的任何元素(包括 CollectionView)都没有任何高度要求。

这是我的代码。目前它还不是特别漂亮,但它是一项正在进行的工作。

<StackLayout>
                <CollectionView x:Name="assessmentsCollectionView"
                                BackgroundColor="Blue">
                    <CollectionView.ItemTemplate>
                        <DataTemplate>
                            <StackLayout Spacing="10"
                                         Padding="5">
                                <Frame CornerRadius="5"
                                       Padding="0"
                                       HorizontalOptions="FillAndExpand"
                                       VerticalOptions="FillAndExpand">
                                    <StackLayout Orientation="Horizontal">
                                        <Frame Padding="5"
                                               CornerRadius="0"
                                               WidthRequest="50">
                                            <Label Text="{Binding TypeLetter}"
                                                   TextColor="#37474f"
                                                   FontSize="24"
                                                   VerticalTextAlignment="Center"
                                                   HorizontalTextAlignment="Center"/>
                                        </Frame>
                                        <StackLayout Padding="10">
                                            <Label Text="{Binding Name}"
                                               TextColor="Black"
                                               FontSize="24"/>
                                            <StackLayout Orientation="Horizontal">
                                                <Image Source="calendarIcon.png"
                                                       WidthRequest="12"
                                                       HeightRequest="12"/>
                                                <Label Text="{Binding Date}"
                                                       FontSize="12"
                                                       TextColor="Gray"/>
                                            </StackLayout>
                                        </StackLayout>
                                    </StackLayout>
                                </Frame>
                            </StackLayout>
                        </DataTemplate>
                    </CollectionView.ItemTemplate>
                </CollectionView>
            </StackLayout>
Run Code Online (Sandbox Code Playgroud)

c# xaml xamarin xamarin.forms

9
推荐指数
2
解决办法
1万
查看次数

标签 统计

c# ×1

xamarin ×1

xamarin.forms ×1

xaml ×1