Properties.Resources没有加载图像

时间:2012-12-10 20:01:50

标签: c# resources

我在Visual Studio 2012 C#中有一个游戏应用程序。我在项目的Resources文件中使用了所有.png图像。

您是否知道为什么我可以通过使用Properties.Resources访问所有文件?

我检查了完整的filePath,并将其设置为resources文件夹。并且它在程序中添加,因为我添加了 - >现有项目并添加了图像。

它看起来就像其他图像一样。我不知道为什么它没有加载。我需要这个,因为我需要通过电子邮件将.exe发送给我的讲师而没有这个图像,项目什么都不是!

enter image description here

我在资源文件中添加了这个

internal static System.Drawing.Bitmap grid_fw {
            get
            {
                object obj = ResourceManager.GetObject("grid.fw", resourceCulture);
                return ((System.Drawing.Bitmap)(obj));
            }
        }

虽然现在网格可用,但它返回null:/

2 个答案:

答案 0 :(得分:4)

发现自:Properties.Resources the icon name does not appear in the intellisense

  

您还需要将图标添加到Resources.resx文件中。打开它   Visual Studio并将您的图标拖到resx和的图标菜单中   它将变得可用。

另请参阅Adding and Editing Resources (Visual C#)

答案 1 :(得分:1)

您可以通过以下方式获得对图像的引用:

Image myImage = Resources.yourImage;

如果您想制作图像的副本,则需要执行以下操作:

Bitmap bmp = new Bitmap(Resources.yourImage);

完成后不要忘记处理 bmp 。如果在编译时不知道资源映像的名称,则可以使用资源管理器:

ResourceManager rm = Resources.ResourceManager;
Bitmap yourImage = (Bitmap)rm.GetObject("yourImage");

ResourceManager的好处是,您可以在Resources.myImage通常超出范围或您想要动态访问资源的位置使用它。此外,这适用于声音,配置文件等。