Dan*_*n M 3 data-binding xaml image xamarin xamarin.forms
我无法使用Xamarin Forms将图像绑定到UriImageSource.
我已经实现了FlowListView,它提供了一个类似网格的文本列表,但是没有出现与每个产品相关的图像.
有没有其他人有这个/知道如何解决它?
<flv:FlowListView
Grid.Row="1"
x:Name="flvListView"
SeparatorVisibility="None"
HasUnevenRows="true"
FlowColumnMinWidth="110">
<flv:FlowListView.FlowColumnTemplate>
<DataTemplate>
<Grid Padding="3">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image HeightRequest="100" >
<Image.Source>
<UriImageSource Uri="{Binding ProductImage}" />
</Image.Source>
</Image>
<Label
x:Name="Label"
HorizontalOptions="Fill"
HorizontalTextAlignment="Center"
VerticalOptions="End"
BackgroundColor="Silver"
Opacity="0.5" Text="{Binding ProductName}"/>
</Grid>
</DataTemplate>
</flv:FlowListView.FlowColumnTemplate>
</flv:FlowListView>
Run Code Online (Sandbox Code Playgroud)
public class vmProduct
{
public vmProduct() { }
/* removed other properties, constructors etc */
public UriImageSource ProductImage { get; set; }
public string ProductName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
初始化vmProduct时
this.Products.Add(new vmProduct
{
ProductName = "Test",
ProductImage = new UriImageSource
{
Uri = new Uri("https://upload.wikimedia.org/wikipedia/en/5/5f/Original_Doge_meme.jpg")
}
});
Run Code Online (Sandbox Code Playgroud)
(在上面的示例中,将出现"Test"但图像不会出现)
既然你绑定UriImageSource了Uri你的ViewModel财产必须是一个Uri.
更改public UriImageSource ProductImage { get; set; }到public Uri ProductImage { get; set; }
| 归档时间: |
|
| 查看次数: |
6087 次 |
| 最近记录: |