WINFORM 如何利用代码动态把资源加入到resources.resx
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WINFORM 如何利用代码动态把资源加入到resources.resx相关的知识,希望对你有一定的参考价值。
点击确定按钮后,把捕获到的路径下的资源用代码动态添加到resources.resx中
在 VS 中添加的资源文件不能在运行时修改是只读的,读取该资源文件中的数据代码如下(生成操作必须是“嵌入的资源”):ResourceManager rm = new ResourceManager(typeof(Resource1)); // typeof 里面是资源的名称,不要加 resx 扩展名,不要加双引号
string value = rm.GetString("关键字"); // 获取字符串类型的资源数据
object obj = rm.GetObject("关键字"); // 获取对象类型的资源数据(如:图片,需强制类型转换)
Stream stream = rm.GetStream("关键字"); // 获取流类型的资源数据(如:文件)
要创建可读写的资源,必须通过代码来完成,操作资源的代码,会在磁盘生成一个资源文件,通常使用扩展名是 resources 类型(扩展名有程序员定义),代码如下:
ResourceWriter rw = new ResourceWriter("资源文件的名称.resources");
rw.AddResource("aaaa", "1345"); // 添加数据
rw.Generate(); // 保存
要读取磁盘上的资源文件,请使用 ResourceReader 类,由于比较简单这里就不贴出代码了,详细可以参考 MSDN 文档 参考技术A ResourceWriter rw = new ResourceWriter("Faces.resources");
Image newFace = Image.FromFile(@path);
rw.AddResource("NewFace1", newFace);
rw.Generate();
rw.Close();*/
/*将资源包里的资源取出放到预览框里
ResourceManager rm=new ResourceManager ("Faces",this.GetType().Assembly);
Image image=(Image)rm.GetObject("NewFace1");
picView.Image = image;*/本回答被提问者采纳
以上是关于WINFORM 如何利用代码动态把资源加入到resources.resx的主要内容,如果未能解决你的问题,请参考以下文章
求教在delphi中,如何把两个exe做为res加入到另一个exe中,并在运行时释放两个exe