在运行时添加图标

时间:2013-02-24 19:36:42

标签: c# winforms

我有一个gui。我在按钮单击时以编程方式从原始表单创建新表单。

Form frm1 = new Form();
frm1.ShowDialog();

我还想在此表单中添加图标(默认值除外)。 我看了主表单是如何添加图标的,我发现了

this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));

如何为新表单执行相同的操作,以及在哪个目录中放置新图标? (从我上面发布的主要表格的自动生成代码中不清楚)

1 个答案:

答案 0 :(得分:3)

这里有2个选项

1)如果您的文件扩展名为.ico,则可以使用Icon的类构造函数

加载它
string pathToIconFile = ...
this.Icon = new Icon(pathToIconFile);

2)您可以在Properties项目文件夹中创建一个图标资源。当您打开属性时,单击Resources.resx并在那里添加资源 - >添加新图标菜单项。这将创建一个图标。您还可以将现有文件中的图标加载到资源中,在这种情况下,图标将构建在可执行文件中。与选项1的区别在于您不需要将图标文件与可执行文件一起分发,因此可以在运行时加载(请记住pathToIconFile) 因此,当您的图标作为资源添加时,它将被赋予一些名称。如果是myIconResource,您可以像这样设置表单的图标:

this.Icon = Properties.Resource.myIconResource;