从代码访问表单的资源(resx文件)

时间:2010-04-15 03:53:32

标签: c# .net winforms

如果我有一个使用某些图标,图像或其他资源的表单Frm1.cs,这些资源将存储在表单的resx文件(Frm1.resx)中。

我的简单问题是如何从代码中访问这些资源?

作为一种解决方法,我可以将这些资源存储在项目资源文件中,它们将通过Properties.Resources.resourcename提供。 但是,类似的语法不适用于存储在表单资源文件中的资源。

在搜索解决方案时,我遇到了几个对ResourceManager类的引用,但是无法找到使用它来访问表单资源的方法......

2 个答案:

答案 0 :(得分:13)

访问本地表单资源的方法是通过ResourceManager的实例。 假设您在名为Frm1的表单中有两个PictureBox:

var resources = new ResourceManager(typeof(Frm1));
var image = (Bitmap)resources.GetObject("pictureBox1.Image");

pictureBox2.Image = image;

希望这可以帮助你...

答案 1 :(得分:0)

如果使用Visual Studio Designer添加资源,则会获得具有静态属性的类Resources来访问它们。

要访问:

this.pictureBox1.Image = Properties.Resources.MyResourceImage;