将图像显示到listview wpf

时间:2016-12-21 22:36:49

标签: c# wpf listview

我需要在下面的代码中添加什么?

我正在做的是查看列表视图中的图像

到目前为止,这是我的代码

/home/git/gitlab/.secret

我需要什么才能将图像显示到列表视图中。代码的输出只是字符串,我做了搜索,但我不明白我找到的代码。谢谢

3 个答案:

答案 0 :(得分:1)

将ListView(或ListBox)的ItemTemplate属性设置为包含Image控件的DataTemplate,并将Image控件的Source属性绑定到集合元件。

<ListView Name="Thumbnails">
     <ListView.ItemsPanel>
        <ItemsPanelTemplate>
            <UniformGrid Columns="1"/>
        </ItemsPanelTemplate>
    </ListView.ItemsPanel>
    <ListView.ItemTemplate>
        <DataTemplate>
            <Image Source="{Binding}"/>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

现在将BitmapImage个实例添加到ListView的Items集合中:

foreach (var item in lstImages)
{
    Thumbnails.Items.Add(new BitmapImage(new Uri(item)));
}

由于从stringUri(和byte[])到ImageSource的内置自动类型转换,您还可以将图像文件路径添加到Items集合:

foreach (var item in lstImages)
{
    Thumbnails.Items.Add(item);
}

下一步,您可能希望拥有一个包含图像文件路径的ObservableCollection<string>属性的视图模型。您可以将ListView的ItemsSource属性绑定到此集合。

答案 1 :(得分:-1)

图像元素添加到ListView:

Thumbnails.Items.Add(new Image() { Source = new BitmapImage(new Uri("yourpic.png", UriKind.Relative)) });

答案 2 :(得分:-2)

应将ListView的ItemSource设置为URI列表。然后,您需要设置一个ItemTemplate,其中包含一个图像控件,其中Source绑定到该值。

ListView.DataTemplate
    ItemTemplate
        Image