打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
NET资源入门之分析篇

1.         嵌入的资源(Excel.png为例)

添加方法:将文件的BuildAction属性设置为Embedded Resource,如图2所示。

2 嵌入的资源

访问方法
Assembly.GetExecutingAssembly().GetManifestResourceStream("DotNetResourceDemo.Resources.excel.png");其中Resources为此资源所在的目录名字。

在程序集中的存在方式Reflector是我最喜欢的工具之一,让我们利用它来分析一下我们的可执行文件吧。可以看到嵌入的资源直接位于Resources文件夹下面,如图3所示。

3 嵌入的资源在Reflector中的表现方式

2.         本地资源(go.gif为例)

添加方法:以PictureBox为例,在设计器中,单击PictureBox右上角的智能标记,选择Choose Image,弹出图4所示的对话框,依次单击|Local Resource|Import,然后选中你希望的资源即可。

                                图4 添加本地资源

访问方法:在*.designer.cs文件中使用
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
this.pbLocal.Image = ((System.Drawing.Image)(resources.GetObject("pbLocal.Image")));
注意,如果使能了窗体本地化,那么使用语句resources.ApplyResources(this.pbLocal, "pbLocal");应用资源在这里我们有必要对这个方法的功能说明一下。ApplyResources尝试通过objectName.PropertyName格式的键查找资源,如果我们使用Reflector查看生成的可执行文件,那么会发现pbLocal所对应的资源,如下图所示,此方法应该会对pbLocal对象应用所有属性,包括ImageLocation等等。

在程序集中的存在方式:单击图3中的DotNetResourceDemo.MainForm.resources,在右侧的反汇编窗口(如图5所示)中可以看出它是以Name/Value的形式存在的。


 

                     图5 本地资源在Reflector中的存在方式

3.         Resx文件中的资源(FreeBSD为例)

添加方法:双击Resources.resx文件,然后单击”Add Resource”即可。

 

6 .resx文件中添加资源

访问方式:this.Icon = DotNetResourceDemo.Properties.Resources.FreeBSD;

在程序集中的存在方式:DotNetResourceDemo.Properties.Resources.resources中。

注意:你也添加一个.resx文件,而且一般很有必要这样做。在这个resx文件中,一般保存着一些字符串资源。另外,一般为每一个程序集创建一个.resx资源文件。

在程序集中的存在方式:存在于图3DotNetResourceDemo.Properties.Resources.resources中。

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
C#实现多语言
ASP.NET 中使用资源文件 - 林子之大.net笔记 - 博客园
C# 嵌入式资源
C#资源文件的使用方法
使用ASP.Net2.0国际化你的网站祥解 - 平平的天空 - 博客园
.NET的资源并不限于.resx文件,你可以采用任意存储形式[上篇]
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服