首页 > Web开发 > 详细

.NET 下各种Resource的读取方式

时间:2015-09-10 22:23:45      阅读:316      评论:0      收藏:0      [点我收藏+]

1) Embedded Resource (Build Action 设置为 Embedded Resource) 在运行时使用GetManifestResourceStream读取

Image.FromStream(Assembly.GetExecutingAssembly().GetManifestResourceStream("WindowsFormsApplication1.Properties.Resources.warning.png"));

 

2) Resource (Build Action 设置为 Resource) 在运行时使用 Resource Manager读取

ResourceManager rm = new ResourceManager("WindowsFormsApplication1.g", typeof(Form1).Assembly);

Image warImg = null;
ResourceSet rs= rm.GetResourceSet(new System.Globalization.CultureInfo("en"),true,true);
foreach (DictionaryEntry item in rs)
{
        Console.WriteLine(item.Key.ToString());

        warImg = Bitmap.FromStream(item.Value as Stream);

}

 

3) 如果是直接添加图片到.Resx资源文件中,在运行时使用Resource Manager读取, 但读取方式有不同

ResourceManager rm = new ResourceManager("WindowsFormsApplication1.Properties.Resources", typeof(Form1).Assembly);

Bitmap warnImg = rm.GetObject("warning") as Bitmap;

 

以上是WinForm 和 WPF下的情况,在ASP.NET下还有另外一种嵌入资源方式,通过WebResourceAttribute, NOTE: 这里的image的build action必须是Embedded Resource.

添加 assembly attribute:

[assembly: WebResourceAttribute("ServerControl1.images.component.gif", "image/gif")]

客户端读取:

string imgURL = Page.ClientScript.GetWebResourceUrl(typeof(ServerControl1), ("ServerControl1.images.component.gif");

.NET 下各种Resource的读取方式

原文:http://www.cnblogs.com/ShaYeBlog/p/4799257.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!