Xamarin - CollectionView VerticalItemSpacing 不起作用

标签 xamarin spacing collectionview

我不知道可能出了什么问题,我已经测试了几种代码变体,但都没有奏效。我还尝试了 Frame 和 StackLayout 的变体。

<ScrollView VerticalOptions="StartAndExpand" Orientation="Vertical">
    <Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>

    <CollectionView Grid.Row="0" x:Name="StockCards_CollectionView" ItemsSource="{Binding lc_ReleaseBill.Items}" SelectionChangedCommand="{Binding OnCollectionViewSelectionChanged}" EmptyView="List is empty." SelectionMode="Single"  SelectedItem="{Binding SelectedStockCard, Mode=TwoWay}">
            <CollectionView.ItemsLayout>
                <GridItemsLayout Orientation="Vertical"  VerticalItemSpacing="20"/>
            </CollectionView.ItemsLayout>
            <CollectionView.ItemTemplate>
                <DataTemplate>
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto" />
                            <RowDefinition Height="Auto" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition Width="Auto" />
                        </Grid.ColumnDefinitions>
                            <Label Grid.Row="0" Grid.Column="0"  Text="{Binding Name}" FontAttributes="Bold" VerticalOptions="Start" TextColor="White"/>

                            <Label Grid.Row="1" Grid.Column="0"  Text="{Binding Unit}" FontAttributes="Italic"  VerticalOptions="Start" TextColor="White"/>

                            <Label Grid.Row="0" Grid.Column="1"  Text="{Binding Price_WithVAT_Unit}" FontAttributes="Bold"  HorizontalOptions="End" FontSize="19" TextColor="#00c8df"/>

                            <Label Grid.Row="1" Grid.Column="1"  Text="{Binding Amount}" FontAttributes="Bold"  HorizontalOptions="End" TextColor="White"/>
                    </Grid>
                </DataTemplate>
            </CollectionView.ItemTemplate>
        </CollectionView>
    </Grid>
</ScrollView> 

在 Xamarin.Forms 4.5.0.356 上运行,在 4.4.0.991640 上运行相同的结果。

最佳答案

我通过从代码中设置 Collection View Item Spacing 来修复它,这并不理想,但它比在 Collection View 内的 Grid 上设置边距更好。

CollectionView.ItemsLayout = new LinearItemsLayout(ItemsLayoutOrientation.Vertical)
    {
       ItemSpacing = 20
    };

关于Xamarin - CollectionView VerticalItemSpacing 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60566650/

相关文章:

ios - 是否可以阻止 iOS 应用程序被放置在主屏幕上?

安卓,Xamarin : Have my app wait for the user input to allow a permission

qt - QVBoxLayout 中小部件之间的空间

ios - 重用单元格时 CollectionView 的奇怪行为

c# - Xamarin - 无法加载程序集“PCLStorage.Abstractions”

css - 如何减少div中两个标签之间的空间

css - 是什么导致元素之间的边距?我怎样才能摆脱它们?

带有 UI 线程问题的 WPF - TaskFactory、CollectionView 问题 - 语法噩梦

ios - Collection View 、数组和字典

Xamarin Forms 将不同字体大小的标签垂直对齐到同一基线