子文件夹中位图的Uri(C# WPF)

9

我有一个WPF应用程序,其中使用了一张图片。要引用这张图片,我使用以下代码:

Uri uri = new Uri("pack://application:,,,/assemblyName;Component/myIcon.png");
BitmapImage(uri)

如果我直接在csproj文件下添加png(其属性BuildAction = Resource),则可以正常工作。
但是我想将其移动到csproj下的子文件夹中。另一个SO问题询问了位图\ uri(857732),并且答案链接到了这个msdn。因此,我尝试了以下操作:
Uri uri = new Uri("pack://application:,,,/assemblyName;Component/Icons/myIcon.png");

但那并没有起作用。

有什么想法吗?

1个回答

14
如果图像位于您的解决方案中(即,您不是从另一个程序集引用图像),则应该能够使用以下语法:

如果图片在你的解决方案中(即你不是从另一个程序集引用图片),你应该能够使用以下语法:

Uri uri = new Uri("pack://application:,,,/Icons/myIcon.png", UriKind.Absolute);

或者,您可以使用相对 URI,如下所示:

Uri uri = new Uri("/Icons/myIcon.png", UriKind.Relative);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接