我想要更改软件任务栏上的图标,所以我更改了项目设置。这个路径是由Visual Studio本身建议的。
我还尝试了结束explorer.exe并重新启动任务,但这完全没有帮助。 我还尝试将分辨率设置为16x16和32x32,但两者都无效。
1 - 将一个文件(例如Address_Book.ico)添加到资源部分
2 - 在您的代码中添加以下行
public Form1()
{
....
this.Icon = Properties.Resources.Address_Book;
}
3 - 它有效。
通过代码设置Form.Icon
属性时,还需考虑以下来自MSDN
的建议:
一个窗体的图标代表着该窗体在任务栏中显示的图片以及窗体控制框中显示的图标。
如果FormBorderStyle
被设置为FixedDialog
,则此属性将不起作用。在这种情况下,窗体将不会显示图标。
您需要使用工具箱中的通知图标组件。请按照以下说明进行操作。
项目属性中设置的图标是可执行文件的图标,而不是任务栏中的图标,任务栏中的图标是当前窗体的图标。
如果您有多个具有相同图标的窗体,并且使用 GUI 设置了一个窗体的图标,则它将在编译后的可执行文件中添加多个图标实例,这将导致更大的编译后文件。
因此,您应该将 Icon = Properties.Resources.icon;
放置在每个窗体的构造函数中以设置窗体的图标。
至于图标大小,我不确定最大尺寸是多少,但我使用 128x128 的图标文件。
当窗体图标在启动后设置时,任务栏图标不会更改的情况包括:
我有一个属于第二类的应用程序。它在Windows启动组中,并以最小化方式启动。如果不想费力地跳过障碍并更改为使用覆盖层,则最简单的解决方案是创建一个简单的一行应用程序,然后启动我的应用程序。
Process.Start(appName);
这个应用程序属于启动组,当它启动我的主要应用程序时,任务栏图标会跟随窗体的当前图标设置。