如何使用资源.动态更新,动态添加新项
本文关键字:动态 添加 新项 更新 资源 何使用 | 更新日期: 2023-09-27 17:50:16
谁能告诉我如何在'资源'中添加资源(图像,字符串等)?动态resx的。
我需要在参考资料中添加一个新的位图。在运行时从程序中获取。我使用的代码是
' ResourceWriter rw;rw = new ResourceWriter("myResources.resources");
rw.AddResource("anImage", new Bitmap("winter.jpg"));
rw.AddResource("welcomeString", "www.java2s.com");
rw.Generate();`
但是我在Resources.resx中没有找到任何东西。请告诉我如何使用ResourceWriter
您可以使用ResourceWriter做到这一点,但我不建议将动态资源写入resx文件。相反,我会使用某种数据库(即嵌入式数据库)。
编辑无效答案
对不起,我说得不准确。我的建议告诉你如何创建编译的资源文件(扩展名为.resources的文件),而不是原始的.resx文件。下面的代码是这样工作的,它能够将image(作为System.Drawing)写入一个名为my.resources的文件。你当然可以用ResourceReader: 读出一个 DialogResult result = openFileDialog1.ShowDialog();
if (result == DialogResult.OK)
{
Bitmap bitmap = new Bitmap(openFileDialog1.FileName);
IResourceWriter writer = new ResourceWriter("my.resources");
writer.AddResource("myImage", bitmap);
writer.Close();
}
看来你需要做Close()
而不是Generate()
。我认为通过关闭资源流,可以强制将其写入磁盘。
您可以通过预览文件(我的)来确保它在那里。