在Visual 2012中创建新的C# Windows窗体应用程序时,它有一个包含Resources.resx文件的Properties文件夹。
如何访问此文件?
我试过:
ResourceManager rm=new ResourceManager("Resources.resx",typeof(MyClass).Assembly);
string s=rm.GetString("MyString");但我之所以获得System.Resources.MissingManifestResourceException,是因为出于某种原因,它将.resources附加到文件名中,因此它正在寻找Resources.resx.resources。然后,我将.resources附加到文件名中,以查看它是否实际工作。不是的,同样的例外,为什么?
我也尝试使用ResxResourceReader类,但它在目录中查找resx文件,而我试图访问的这个特定的resx文件不是存储在目录中,而是编译到程序集中,因此这似乎也没有帮助。
我以为会很简单,也许是,但我只是忽略了什么?
如果不是简单的话,我还不如创建一个C#类并硬编码我的字符串(我现在只需要一种资源类型)。
还有另一个问题:如果resx文件被编译到您的exe中,这是否意味着您不能在运行时更改它的值?
发布于 2014-05-13 09:46:59
它很简单(通常)。
使用Properties类!
Properties.Resources.MyString您在解决方案资源管理器中看到的Properties文件夹不仅仅是一个花哨的文件夹;p Visual Studio生成一个类来轻松地访问您的所有资源。
https://stackoverflow.com/questions/23627853
复制相似问题