无法从应用程序资源获取图像

时间:2015-12-21 20:13:48

标签: c# visual-studio-2013 bitmap resources

我正在试图弄清楚ResourceManager是如何工作的。我已经阅读了几篇文章,但却没有设法让它工作......

我在项目中添加了位图文件(右键单击+添加新项目+位图文件)。 我可以在正确的路径下看到添加的位图文件到项目资源管理器中:WinForm1 / Properties / Resources / bitmapName.png

然后我尝试使用以下命令访问资源:

var test = WinForm1.Properties.Resources.ResourceManager.GetObject("bitmapName.png"); // I also tried "bitmapName" with no luck

返回null。我错过了什么吗?

2 个答案:

答案 0 :(得分:1)

所以我找到了解决方案:

  • 添加位图文件后,请将其关闭。
  • 然后在解决方案资源管理器中找到您的文件。同时打开项目 - >属性 - >资源即可。
  • 然后将位图从“解决方案资源管理器”拖动到“资源”面板。它将被复制为资源。
  • 然后将资源命名为您喜欢的任何内容(最好保持它与文件名相同)。
  • 接下来,在解决方案资源管理器中,右键单击该文件,然后在“属性”面板中,将“构建操作”设置为“资源”。

现在,您应该能够通过问题中的相同方法访问资源:

var test = WinForm1.Properties.Resources.ResourceManager.GetObject("bitmapName");

请注意,传递给GetObject()的名称应与“属性”窗口的“资源”选项卡中显示的名称相同。

截图:

Screenshot

答案 1 :(得分:0)

没有按照你向Farhan展示的方式工作。 CF附上截图。

位图位图=(位图)WpfTest.Properties.Resources.ResourceManager.GetObject(" Rat_Left.png"); 尽管资源构建操作设置为" resource"。enter image description here

,但返回null