如何解决Xamarin MasterDetailPage用图像填充标题
我在Xamarin Forms上遇到此问题: white empty space on listview
我想用背景图像填充空白区域(我已经尝试过verticaloptions和horizontaloptions = fillandexpand,但是什么也没发生)
XAML代码:
<StackLayout>
<ListView x:Name="MenuItemsListView"
SeparatorVisibility="None"
HasUnevenRows="true"
ItemsSource="{Binding MenuItems}">
<ListView.Header>
<Grid BackgroundColor="GhostWhite">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="10"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="10"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="80"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="10"/>
</Grid.RowDefinitions>
<Image Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" Grid.RowSpan="3" x:Name="circlebg" Source="" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand"></Image>
<Frame Grid.Column="1" Grid.Row="1" x:Name="circleFrame" HasShadow="False" Padding="0" Margin="0" VerticalOptions="Center" HorizontalOptions="Center" BackgroundColor="Black" BorderColor="White" CornerRadius="10" IsClippedToBounds="True">
<Image x:Name="circleImg" Source=""></Image>
</Frame>
<Label
x:Name="txtName"
Grid.Column="1"
Grid.Row="2"
TextColor="White"
Text=""
HorizontalTextAlignment="Center"
FontFamily="{StaticResource Montserrat-Medium}"
Style="{DynamicResource SubtitleStyle}"/>
</Grid>
</ListView.Header>
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout Orientation = "Horizontal" Margin = "10" HorizontalOptions="FillAndExpand">
<Image Source = "{Binding Image}" HorizontalOptions="Start" >
<Image.HeightRequest>
<OnPlatform x:TypeArguments="x:Double">
<On Platform="Android,Windows">30</On>
</OnPlatform>
</Image.HeightRequest>
</Image>
<Label Text = "{Binding Title}"
VerticalOptions="FillAndExpand"
FontFamily="{StaticResource Montserrat-Medium}"
VerticalTextAlignment="Center"
FontSize="18"/>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
有人知道我该如何解决? 预先感谢
更新: 测试1- 结果:result test 1
<Image Aspect="Fill" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" Grid.RowSpan="3" x:Name="circlebg" Source="" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand"></Image>
测试2-结果:result test 2
解决方法
将Aspect="Fill"设置为图像,它将填充空白。
<Image Aspect="Fill" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" Grid.RowSpan="3" x:Name="circlebg" Source="Images" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand"></Image>
更新:
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="80"/>
<RowDefinition Height="100"/>
</Grid.RowDefinitions>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。