C# 图像相对路径在一个项目中有效,但在另一个项目中无效

C# 图像相对路径在一个项目中有效,但在另一个项目中无效,c#,wpf,C#,Wpf,下面的代码在另一个项目中工作。同样在第二个,如果我包括绝对url。 我的项目文件夹中有res文件夹。有什么不同 BitmapImage myBitmapImage = new BitmapImage(); myBitmapImage.BeginInit(); myBitmapImage.UriSource = new Uri(@"\res\arato.png", UriKind.RelativeOrAbsolute); myBitmapIm

下面的代码在另一个项目中工作。同样在第二个,如果我包括绝对url。 我的项目文件夹中有res文件夹。有什么不同

 BitmapImage myBitmapImage = new BitmapImage();
         myBitmapImage.BeginInit();
         myBitmapImage.UriSource = new Uri(@"\res\arato.png", UriKind.RelativeOrAbsolute);
         myBitmapImage.EndInit();

         var img = new Image();
         img.Source = myBitmapImage;
         img.Margin = new Thickness(0, 0, 0, 0);

         canvas.Children.Add(img);
用于给出相对或绝对路径。

用于给出相对或绝对路径。

解决方案是: 我必须将图片拖到Visual Studio中的文件夹中,而不是文件资源管理器中。

解决方案是:
我必须将图片拖到Visual Studio中的文件夹中,而不是文件资源管理器中。

这可能与文件的生成操作有关。如果您在VisualStudio内部查看文件的属性,您应该会看到生成操作。Wpf在“资源”中发挥得最好,而在“嵌入式资源”中则不起作用。不幸的是,Embedded Resource有一个更直观的名称(至少对我来说是这样),所以我在第一次学习WPF时遇到了这个问题。

这可能与文件的构建操作有关。如果您在VisualStudio内部查看文件的属性,您应该会看到生成操作。Wpf在“资源”中发挥得最好,而在“嵌入式资源”中则不起作用。不幸的是,嵌入式资源有一个更直观的名字(至少对我来说),因此,当我第一次学习WPF时,我在这方面遇到了麻烦。

@CSOMAK:这怎么不简单?@CSOMAK:这怎么不简单?这可能取决于图像是否设置为
Content
Resource
。这可能取决于图像是否设置为
Content
Resource