从资源中使用图标的任何简单方法?

gue*_*t86 40 c# forms resources icons

我有一个C#应用程序.我需要为该应用添加一个图标,所以我添加了一个图标资源.添加资源很顺利,但有没有办法使用我的(资源)图标作为表单图标而不添加额外的代码?当我尝试使用表单的设计时"图标"属性时,似乎我必须选择一个文件,但我想使用嵌入式图标...

有帮助吗?

小智 112

1-将图标添加到项目资源并重命名为图标.

2-打开要添加图标的表单的设计者.

3-附加InitializeComponent函数.

4-在顶部添加此行:

this.Icon = PROJECTNAME.Properties.Resources.icon;
Run Code Online (Sandbox Code Playgroud)

对所有表单重复步骤4.

  • 感谢@Moudi 的回答 - 这就是要走的路!如果您在应用程序中多次使用资源(即图标、图像),如果按照您在此处描述的方式嵌入,它将减少应用程序的文件大小! (2认同)
  • 您也可以在调用`InitializeComponent`之后将其包含在表单构造函数中 (2认同)

小智 11

我如何加载图标:使用Visual Studio 2010:转到项目属性,单击添加资源>现有文件,选择您的图标.

您将看到出现一个Resources文件夹.这是我的问题,我必须单击加载的图标(在Resources目录中),并将"Copy to Output Directory"设置为"Always always".(设置为"不要复制").

现在只需:

Icon myIcon = new Icon("Resources/myIcon.ico");
Run Code Online (Sandbox Code Playgroud)

  • 如果从文件加载图标,添加为资源是没有意义的,只会增加可执行文件/程序集大小.从文件加载的另一个问题是您必须单独部署所有文件.请注意,最终用户可以通过覆盖文件轻松替换外部资源. (2认同)

The*_*der 9

选择该文件,将图标嵌入可执行文件中.