我在这里有 ListView,但无法让项目垂直居中:
<ListView x:Name="TasksList" ItemSelected="TasksList_ItemSelected">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Label Grid.Row="0" Grid.Column="0" Text="{Binding name}" Padding="20, 0, 0, 0"></Label>
<Label Grid.Row="0" Grid.Column="1" Text="{Binding status}" HorizontalTextAlignment="End" Padding="0,0,20,0" TextColor="{Binding statusColor}"></Label>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我尝试在标签周围添加 StackLayout 并使用 VericalOptions 和 VerticalTextOptions,但似乎没有任何效果
只需在 ListView 中为您的 Grid 添加以下代码:
VerticalOptions="Center"
请参考以下代码:
<ListView x:Name="lstView" RowHeight="60">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid VerticalOptions="Center">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Label Grid.Row="0" Grid.Column="0" Text="{Binding name}" Padding="20, 0, 0, 0"></Label>
<Label Grid.Row="0" Grid.Column="1" Text="{Binding status}" HorizontalTextAlignment="End" Padding="0,0,20,0" ></Label>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句