2009-09-22 195 views
12

我正在Visual Studio 2005中第一次使用C#项目,我想知道是否有什么特别的事情需要改变应用程序图标,而不是改变项目属性中正确的资源。Visual Studio,更改应用程序图标,如何?

我设法查看资源管理器中显示的新图标,但应用程序,托盘和任务栏中的图标保留为旧图标。

我想知道这是否与Windows Vista有关,也许缓存应用程序图标,然后从不真正刷新它。如果您打开了缩略图,则资源管理器中也会发生同样的情况。

如果确实缓存了图标,我可以做什么来更新/删除缓存,以及它是基于什么(GUID也许?不是文件名,虽然我改变了,仍然是相同的)。

感谢

+0

我在另一台应用程序从未运行的计算机上试过,仍然是同一个问题,因此放弃了缓存。 – 2009-09-22 14:33:59

回答

9

你试过设置Form.Icon(的WinForms)或Window.Icon(WPF)?

+1

不,但目前旧图标显示正常。我试图通过在Visual Studio图标编辑器中对其进行简单编辑来替换旧图标。它不会更改所有图标,只会与应用程序关联。 – 2009-09-22 14:48:41

+4

当您将图标分配给Visual Studio中的“Form.Icon”属性时,IDE不会引用您要添加的文件,而是将该文件复制到与表单关联的.resx文件中。要更新图标,您必须再次分配图标,以便Visual Studio更新副本。 – dtb 2009-09-22 14:54:05

+0

干杯dtb,似乎是我在哪里出错了。我找到了有问题的resx文件,并在应用程序中看到了与每个选项卡相对应的一些图像。虽然当试图编辑/重新导入它们时,我收到警告。仍在调查。谢谢。 – 2009-09-22 15:07:03

0

托盘中的图标,任务栏基于窗体或窗口图标。应用程序图标(您在资源管理器中看到的图标)在属性中设置。

+1

我错过的部分是当我只是编辑旧图标并覆盖它(创建新图标)时,旧图标如何显示仍然显示。困惑... – 2009-09-22 14:51:14

13

它可能与Vista无关。下面的镜头显示了Vista上的Windows Form Apploration runnig。您可能尝试过相同的模板,但使用.Net Framwork 2.0。 我不确定,但我认为.Net Framework 3.0在VS 2005中不可用。 您需要设置Forms Icon属性。

+0

谢谢asdi,这正是我最终做的。我终于找到了实际表单的属性中的图标,而不是解决方案。 – 2009-09-22 20:20:36

+0

为什么你接受另一个答案?我今天遇到同样的问题,Asad的答案是最有帮助的。 – shift66 2012-02-03 21:15:28

1

附加来自资源的托盘图标。将适当的图像放入资源中并命名为图标

NotifyIcon tray = new NotifyIcon(); 
tray.Icon = Icon.FromHandle(WindowsApplication1.Properties.Resources.icon.GetHicon()); 
tray.Visible = true; 
+0

即使在Visual Studio 2013中,设置了ICON属性,应用程序*仍*不显示任务栏中的图标,直到您执行此操作。 – Redgum 2014-09-03 20:28:39

1

当我想为我的WinForms程序创建图标时,我遇到了完全相同的问题。 以下解决方案适用于我:

开始在Paint或Photoshop中创建图标。使尺寸最好是256x256和24位颜色。如果你使用32位颜色,你将无法使背景变得透明。 将图像保存为.png。

使用您最喜爱的互联网浏览器,输入页面http://iconverticons.com/online/

本页面转换您的巴纽成一个.ico文件。由于您有256x256输入文件,因此Web应用程序可以创建尺寸为256,128,64,32,24和16平方的.ico文件。

然后可以通过在解决方案资源管理器 - >属性 - >应用程序中右键单击项目名称,将此图标添加到项目中。在资源字段下,选择图标和清单,然后按右侧的三个虚线按钮以显示图标组合框。浏览到你的图标文件并选择它。

这会将图标添加到您的项目中,就像您在使用Windows资源管理器时看到的一样。请注意,您必须将bin文件夹中的.exe文件复制到另一个目录中才能看到图标的更改。这是因为缩略图图标不能很容易刷新。

但是,这不会将图标添加到您的任务栏。为了做到这一点,请到您的窗体设计窗口,这是您可以更改程序图形外观的地方。转到属性并在组合框中选择“Form1”。在那里您会找到一个名为Icon的选项。通过浏览这个属性到你的.ico文件,你可以添加图标文件到你的程序中,它也会出现在任务栏上。

我希望这适用于所有想要为项目添加图标的人。一旦我获得足够的代表点来启用: - |,我将添加一些描述性图像

0

我刚刚遭受同样的问题,8年。 确实出现Windows(7)或Visual Studio(2017)正在缓存图标。 我可以找到清除缓存的唯一方法是使用电源循环。

相关问题