【问题标题】:xamarin forms - listview - picker - wont align with rows in listviewxamarin 表单 - 列表视图 - 选择器 - 不会与列表视图中的行对齐
【发布时间】:2021-04-21 20:10:34
【问题描述】:

我在 stacklayout 中有一个列表视图...所有内容都出现在屏幕上...除了选择器距离行的其余部分大约一厘米...我尝试更改行的高度但是无济于事...有谁知道为什么选择器...“0”与其他行(例如品牌名称、尺寸和价格)不在同一水平对齐上。

<Grid>
          
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
               
            </Grid.RowDefinitions>

            <StackLayout Grid.Row="0"> 
                <ListView x:Name="WineLV" IsVisible="True" VerticalOptions="FillAndExpand" HasUnevenRows="True" ItemsSource="{Binding WineL}" HeightRequest="50">
                <ListView.ItemTemplate>
                    <DataTemplate>
                            <ViewCell>
                            <StackLayout BackgroundColor="Transparent" HorizontalOptions="StartAndExpand" Padding="5">

                                <Frame OutlineColor="Black" Padding="10" BackgroundColor="Transparent">

                                    
                                    <Grid>

                                            
                                        <Grid.RowDefinitions>
                                            <RowDefinition Height="40"/> 
                                            
                                        </Grid.RowDefinitions>
                                        <Grid.ColumnDefinitions>
                                                <ColumnDefinition Width="16*"/>
                                                <ColumnDefinition Width="35*"/>
                                                <ColumnDefinition Width="15*"/>
                                                <ColumnDefinition Width="15*"/>
                                                <ColumnDefinition Width="19*"/>
                                            </Grid.ColumnDefinitions>  

                                       

                                            <Label Grid.Column="0" Grid.Row="0" Text="{Binding Id}" VerticalOptions="End" IsVisible="False"/>
                                        <controls:CircleImage  Grid.Column="0"  Grid.Row="0" HeightRequest="60" HorizontalOptions="CenterAndExpand" VerticalOptions="Center" Aspect="AspectFill" WidthRequest="66" Grid.RowSpan="2" Source="{Binding Img}"/>
                                        <Label Grid.Column="1" Grid.Row="0" Text="{Binding BrandName}" VerticalOptions="Start" FontSize="Medium"/>
                                            <Label Grid.Column="1" Grid.Row="1" Text="{Binding Grapes}" VerticalOptions="Start" FontSize="Medium"/>
                                            <Label Grid.Column="2" Grid.Row="0"  Text="{Binding Sizes}" VerticalOptions="Start" FontSize="Medium"/>
                                            <Picker Grid.Column="3" Grid.Row="0" Title="   0" x:Name="pPicker" HorizontalOptions="EndAndExpand"  ItemsSource="{Binding ListQ}" ItemDisplayBinding="{Binding Value}" SelectedIndexChanged="QuantityC" SelectedItem ="{Binding Selected}"/>
                                            <Label Grid.Column="4" Grid.Row="0" VerticalOptions="Start" HorizontalOptions="EndAndExpand" Text="{Binding Price, StringFormat='£{0:0.00}'}" FontSize="Medium"/>
                                        </Grid>
                                </Frame>
        </StackLayout>
                        </ViewCell>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
            
        </StackLayout>

【问题讨论】:

  • 所有其他人都有VerticalOptions="Start" - 尝试将它们更改为中心,并可能也设置VerticalTextAlignment
  • 杰森非常感谢您的回复。这已经解决了这个问题。如果你写出A,那就错了。再次感谢

标签: xaml listview xamarin xamarin.forms grid


【解决方案1】:

所有其他人都有VerticalOptions="Start" - 尝试将它们更改为Center,并可能也设置VerticalTextAlignment

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-14
    • 2019-06-30
    • 1970-01-01
    • 1970-01-01
    • 2020-06-03
    相关资源
    最近更新 更多