【发布时间】:2012-01-12 15:59:58
【问题描述】:
我有一个收藏
private ObservableCollection<ImageData> imageDataList = new ObservableCollection<ImageData>(); 其中 ImageData 是自定义对象。它有一个名为fileName 的属性,它是一个存储图像文件完整路径的字符串。在我的 XAML 代码中,我有一个带有数据模板的列表框,如下所示。
<ListBox Name="listBox_ImageList" Grid.ColumnSpan="3" Grid.Row="2" SelectionChanged="listBox_ImageList_SelectionChanged">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Image Source="{Binding fileName}" Height="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=ListBox, AncestorLevel=1}, Path=ActualHeight}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
将ImagaData对象填充到imageDataList后,我设置this.listBox_ImageList.ItemsSource = imageDataList;
但是,当我运行它时,我看不到任何图像。您能告诉我如何正确地将对象的字符串成员数据绑定到 WPF 图像源吗?
【问题讨论】:
-
你看到任何东西了吗?如果您注释掉 ListBox.ItemTemplate 代码,您会看到什么(您应该看到 [ImagaData.ToString()])?
标签: wpf