ColumnSpan在Xamarin表单中的奇怪行为
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ColumnSpan在Xamarin表单中的奇怪行为相关的知识,希望对你有一定的参考价值。
我有一个内部定义网格的内容视图。网格有三行两列。我有一个图像应该覆盖第一行中的两列,即列跨度= 2但是将列跨度设置为2不会覆盖整个区域并将其设置为3来完成工作。是因为我创建网格的方式有任何错误。以下是整个内容视图。
<?xml version="1.0" encoding="UTF-8"?>
<ContentView xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="GridView.HomeSliderComponent">
<ContentView.Content>
<Grid BackgroundColor="Black">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding Cover}" Aspect="AspectFill" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3"/>
<Label Text="{Binding Title}" Grid.Row="1" Grid.Column="0" Margin="10,0,0,0" VerticalOptions="Center"/>
<Label Text="{Binding Description}" Grid.Row="2" Grid.Column="0" VerticalOptions="Center" Margin="10,0,0,0"/>
<Button Text="Resume Course" TextColor="#EBB53E" Grid.Row="2" Grid.Column="2" VerticalOptions="End" HorizontalOptions="End" Margin="5,5" BackgroundColor="Black" BorderColor="#EBB53E" BorderRadius="2" BorderWidth="2"/>
</Grid>
</ContentView.Content>
</ContentView>
答案
问题是,你的Button
有Grid.Column="2"
,暗示创造了第三列。因此你的网格有3列,你需要Grid.ColumnSpan="3"
,以跨越整个宽度的Image
。
以上是关于ColumnSpan在Xamarin表单中的奇怪行为的主要内容,如果未能解决你的问题,请参考以下文章