资源在resx文件中返回null

问题描述 投票:-2回答:1

我试图从一个资源加载图像,但即使图像在资源文件中,它也说它为null。

声明图像属性

Image selectedImage = null;
Image emptyImage = null;

ResourceManager rm = new ResourceManager("SchedurlesImages.resx", Assembly.GetExecutingAssembly());


Bitmap selectedImage = (Bitmap)rm.GetObject("selected");
Bitmap emptyImage = (Bitmap)rm.GetObject("empty");

当我逐步调试调试器时,它们显示为null? qazxsw poi

c# winforms embedded-resource
1个回答
0
投票

您已声明了2个变量或字段:

enter image description here

但是您要将资源分配给新的局部变量(在变量前写入类型名称使其成为新的变量声明):

Image selectedImage = null;
Image emptyImage = null;

删除类型名称以使用先前声明的变量或字段

Bitmap selectedImage = (Bitmap)rm.GetObject("selected");
Bitmap emptyImage = (Bitmap)rm.GetObject("empty");

如果图像位于当前项目的资源中,则可以使用它们访问它们

selectedImage = (Image)rm.GetObject("selected");
emptyImage = (Image)rm.GetObject("empty");

Visual Studio使用硬编码和强类型资源创建一个代码隐藏文件。

© www.soinside.com 2019 - 2024. All rights reserved.