У меня есть коллекция private ObservableCollection<ImageData> imageDataList = new ObservableCollection<ImageData>();
где ImageData - это настраиваемый объект. Он имеет атрибут, называемый fileName
, который содержит полный путь к файлу изображения. В моем коде XAML у меня есть список с datatemplate следующим образом.Связать образ datatemplate с атрибутом пользовательского объекта в WPF
<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?
Вы видите _anything_? что вы видите, если вы закомментируете код ListBox.ItemTemplate (вы должны увидеть [ImagaData.ToString()])? –