Wie kann ich die Größe eines Bildes innerhalb einer ListView?
Wie ich die Größe eines Bildes innerhalb einer ListView?
Dem angesprochenen Gerät ist Windows Phone 10 (d.h. Universellen Windows-Plattform).
Habe ich entdeckt das folgende Dokumentation:
Beachten Sie, dass, wenn Sie auf Windows Phone 8.1, ImageCell-nicht-Skala
Bilder standardmäßig. Beachten Sie auch, dass Windows Phone 8.1 ist das nur
Plattform, auf der detail-text ist präsentiert in der gleichen Farbe und schriftart
als primäre text standardmäßig. Windows Phone 8.0 macht ImageCell-als
unten zu sehen:
Ich versucht habe:
<ListView Grid.Row="1" ItemsSource="{Binding Photos}" SelectedItem="{Binding SelectedPhoto, Mode=TwoWay}">
<ListView.ItemTemplate>
<DataTemplate>
<ImageCell ImageSource="{Binding ImageSource}" Text="{Binding Description}" TextColor="Silver" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Das Bild oben zeigt einen ausgewachsenen Bild ohne Beschränkung der Größe des Bildes zu passen, wie ein listview-Element.
Ich habe auch versucht:
<ListView Grid.Row="1" ItemsSource="{Binding Photos}" SelectedItem="{Binding SelectedPhoto, Mode=TwoWay}">
<ListView.ItemTemplate>
<DataTemplate>
<Image Source="{Binding ImageSource}" Aspect="AspectFit" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Der obige code zeigt keinen Bild. Es zeigt nur einen weißen hintergrund.
- haben Sie versucht, die Einstellung der widthrequest und horizontaloptions?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Paar Dinge:-
ImageCell
hat keine Möglichkeit zu geben Sie die Bild-Breite /Höhe (in v2.0.x).Dein zweites Beispiel ist mehr auf der Strecke, allerdings müssen Sie wickeln Sie es in ein
ViewCell
wie Sie es mit einemListView
etwa so:-Beachten Sie auch, dass der Standard für einen
ListView
eingestellt zu haben gleich Zeilenhöhen.Deshalb wenn Sie unterschiedliche Bildgrößen, die Chancen sind, diese können nicht produzieren, die Ausgabe, die Sie wollen.
Um dies zu umgehen, geben Sie
HasUnevenRows='True'
.Wenn Sie weiter tun
BindableProperties
für das, was Sie wollen, dieImageWidth
undImageHeight
in IhremViewModel
, und geben Sie wie im obigen Beispiel mitWidthRequest
undHeightRequest
fürImage
bekommen Sie so etwas wie dieses für die Ausgabe bei Angabe unterschiedlicher Werte:-