我在ViewModel上有这样的代码,它具有以下属性:
private string _fullName;
public string FullName
{
get => _fullName;
set
{
_fullName = value;
OnPropertyChanged(nameof(FullName));
}
}
private string _imageUrl;
public string ImageUrl
{
get => _imageUrl;
set
{
_imageUrl = value;
OnPropertyChanged(nameof(ImageUrl));
}
}
// Some other properties
然后我在XAML上有这样的代码:
<Grid Margin="25">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Frame Grid.Column="0" CornerRadius="100" HeightRequest="86" WidthRequest="86" HorizontalOptions="Center" Padding="0" IsClippedToBounds="True">
<Image Source="{Binding ImageUrl}" HorizontalOptions="Center" VerticalOptions="Center" Aspect="Fill"/>
</Frame>
<StackLayout Grid.Column="1" Orientation="Vertical" VerticalOptions="Center" Margin="15">
<Label Text="{Binding FullName}" FontSize="Large" FontAttributes="Bold"/>
<Label Text="{Binding Email}" FontSize="Small" />
</StackLayout>
</Grid>
每个属性都被加载,除了图像。我担心这是Image控件的一些限制,但是当我只使用Image控件而不被Frame元素 Package 时,图像加载得很好。
<!--This code works just fine-->
<Image Source="{Binding ImageUrl}" HorizontalOptions="Center" VerticalOptions="Center" Aspect="Fill"/>
Frame控件在处理来自Web的图像时是否有限制?当我从本地资源/图像文件夹加载图像时,这两种方法都很好。我还尝试在模拟器的浏览器上打开图像,它工作得很好。
我做错了什么?
1条答案
按热度按时间unhi4e5o1#
我测试了你提供的代码,发现:
当它是:
The image will miss as you said that。
但是,如果我删除Image的
HorizontalOptions
和VerticalOptions
,图像将显示良好。这是effect