我看到一个类似的问题here但是在答案之后没有解决同样的问题。图像仍然垂直列出。我从NetFlix绑定oData。
以下是XAML: -
<Window.Resources>
<DataTemplate x:Key="ImageCell">
<StackPanel Orientation="Horizontal">
<Image Source="{Binding BoxArt.MediumUrl}" Width="200" Height="200" Stretch="Fill" ToolTip="{Binding Synopsis}"/>
</StackPanel>
</DataTemplate>
</Window.Resources>
<ListView Margin="21,40,26,9" Name="lvwTitles" ItemsSource="{Binding}"
IsSynchronizedWithCurrentItem="True"
SelectionMode="Single" ItemTemplate="{StaticResource ImageCell}">
</ListView>
以下是代码: -
List<Title> titles = serviceAccessor.GetAllTitlesByGenre(cmbGenre.SelectedValue.ToString());
lvwTitles.ItemsSource = titles;
答案 0 :(得分:5)
您正在错误的位置使用堆栈面板。 datatemplate中的stackpanel只为列表视图中的每个项创建一个包含单个图像的堆栈面板。尝试设置itemspanel ..这样的事情:
<ListView>
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
...
</ListView>