WPF - 在ListView中加载图像

时间:2013-12-07 19:06:11

标签: c# wpf listview

我的WPF应用程序有点问题。

好吧,我有一个ListView,它在第一列显示一个图像。每个元素都可以有或没有图像,因此我不时会在此列中加载“默认”图像。

这是问题所在。

当我加载默认图像时,列表视图中没有显示图像。

这是codepart,它添加了默认图像:

 Uri src = new Uri(@"/myapp;component/Images/Picture.png", UriKind.RelativeOrAbsolute);
                        BitmapImage small_image_bmp = new BitmapImage();

                        small_image_bmp.BeginInit();
                        small_image_bmp.CacheOption = BitmapCacheOption.OnLoad;
                        small_image_bmp.UriSource = src;
                        small_image_bmp.EndInit();
                        small_image_bmp.Freeze();

                        dto.Bild1_Bitmap = small_image_bmp;               


                    this.liste.Add(dto);

此代码无效。

但是这部分效果很好

 Uri src = new Uri(@"C:\Users\me\Documents\Visual Studio 2010\Projects\myapp\myapp\Images\Picture.png", UriKind.RelativeOrAbsolute);
                        BitmapImage small_image_bmp = new BitmapImage();

                        small_image_bmp.BeginInit();
                        small_image_bmp.CacheOption = BitmapCacheOption.OnLoad;
                        small_image_bmp.UriSource = src;
                        small_image_bmp.EndInit();
                        small_image_bmp.Freeze();

                        dto.Bild1_Bitmap = small_image_bmp;               


                    this.liste.Add(dto);

正如您所看到的,不工作的部分具有相对路径,而正在工作的代码具有绝对路径。

但当然我不能使用绝对路径......

这是ListViewColumn的XAML:

  <GridViewColumn Header="Bild">
                        <GridViewColumn.CellTemplate>
                            <DataTemplate>
                                <StackPanel Orientation="Horizontal">
                                    <Image Width="100" Height="100" Source="{Binding Bild1_Bitmap}"/>
                                </StackPanel>
                            </DataTemplate>
                        </GridViewColumn.CellTemplate>
                    </GridViewColumn>

1 个答案:

答案 0 :(得分:0)

如果您发布的用于加载图片的代码与图片位于同一个程序集中。您可以忽略组件路径并像这样使用 - Images\Picture.png

另请确保image build action设置为Resource