Xamarin - Bild Anzeigen von base64-string

Ich bin ziemlich neu zu Xamarin und XAML und hier ist was ich bisher gemacht habe in meinem portable-Projekt von Android & iPhone (nur mit Android):

Element.cs (geladen aus JSON)

    [JsonProperty("image")]
    private string ImageBase64 { get; set; }

    [JsonIgnore]
    private Xamarin.Forms.Image _image = null;

    [JsonIgnore]
    public Xamarin.Forms.Image Image
    {
        get
        {
            if (_image == null)
            {
                _image = new Xamarin.Forms.Image()
                {
                    Source = Xamarin.Forms.ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(ImageBase64))),
                    BackgroundColor = Color.White,
                    WidthRequest = 64,
                    HeightRequest = 64,
                };
                OnPropertyChanged("Image");
            }
            return _image;
        }
        private set
        { _image = value; }
    }

ItemsView.xaml:

<StackLayout VerticalOptions="FillAndExpand" Padding="5,20,5,0" >
  <Label Text="Items" VerticalOptions="Center" Font="35" HorizontalOptions="Center" />
  <ListView x:Name="list" ItemsSource="{Binding Items}">
    <ListView.ItemTemplate>
      <DataTemplate>
        <ImageCell
                        Text="{Binding ItemName}"
                        Detail="{Binding Infos, StringFormat='{0}'}"
          Image.Source="{Binding Path=Image}">
        </ImageCell>
      </DataTemplate>
    </ListView.ItemTemplate>
  </ListView>
</StackLayout>

Habe ich richtig erhalten, mein Beschriftungen angezeigt aber das Bild nicht.
Kann jemand mir erklären was ich falsch mache?

  • 2 Dinge springen mich an: a) Sie sind verbindlich, eine ImageSource, um ein Bild b) "Path=" ist unnötig
InformationsquelleAutor Arnaud F. | 2016-05-06
Schreibe einen Kommentar