【问题标题】:Visual Studio, change app icon, how?Visual Studio,更改应用程序图标,如何?
【发布时间】:2010-11-30 10:24:48
【问题描述】:

我在 Visual Studio 2005 中处理第一个 C# 项目,我想知道除了更改项目属性中的正确资源之外,是否需要做任何特别的事情来更改应用程序图标。

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

我想知道这是否与 Windows Vista 有关,可能缓存应用程序图标,从那时起就没有真正刷新它。如果您打开了缩略图,在资源管理器中也会发生同样的情况。

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

谢谢

【问题讨论】:

  • 我在另一台从未运行过该应用程序的计算机上尝试过,但仍然存在同样的问题,因此缓存被丢弃。

标签: c# visual-studio caching icons


【解决方案1】:

这可能与 Vista 无关。以下镜头显示了在 Vista 上运行的 Windows 窗体应用程序。您可能尝试过相同的模板,但使用的是 .Net Framwork 2.0。 我不确定,但我认为 .Net Framework 3.0 不适用于 VS 2005。 您需要设置 Forms Icon 属性。

【讨论】:

  • 感谢 asdi,这正是我最终要做的。我终于在实际表单的属性中找到了图标,而不是解决方案。
  • 那么你为什么接受另一个答案?我今天遇到了同样的问题,Asad 的回答是最有帮助的。
【解决方案2】:

您是否尝试过设置Form.Icon (Winforms) 或Window.Icon (WPF)?

【讨论】:

  • 否,但目前旧图标显示正常。我试图通过在 Visual Studio 图标编辑器中简单地编辑旧图标来替换旧图标。它不会更改所有图标,但只会更改与应用程序关联的图标。
  • 在 Visual Studio 中将图标分配给 Form.Icon 属性时,IDE 不会引用您正在添加的文件,而是将文件复制到与关联的 .resx 文件中表格。要更新图标,您必须再次分配图标,以便 Visual Studio 更新副本。
  • 干杯 dtb,看来这是我出错的地方。我找到了有问题的 resx 文件,并看到了一些与应用程序中的每个选项卡相对应的图像。尽管在尝试编辑/重新导入它们时,我收到了警告。还在调查。谢谢。
  • 现在只缺少托盘栏图标。似乎找不到在哪里更改它。
  • 完成!感谢有关将图标重新导入 resx 的提示。
【解决方案3】:

其他资源托盘图标。将适当的图像放入资源中并将其命名为 icon

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

【讨论】:

  • 即使在 Visual Studio 2013 中,设置了 ICON 属性,应用程序仍然在您执行此操作之前不会在任务栏中显示图标。
【解决方案4】:

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

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

使用您喜欢的互联网浏览器并进入页面http://iconverticons.com/online/

此页面将您的 .png 转换为 .ico 文件。由于您有一个 256x256 的输入文件,因此 Web 应用程序能够创建大小为 256、128、64、32、24 和 16 平方的 .ico 文件。

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

这会将图标添加到您的项目中,正如您在使用 Windows 资源管理器时所看到的那样。请注意,您必须将 .exe 文件从 bin 目录复制到另一个目录才能看到图标的变化。这是因为缩略图图标没有那么容易刷新。

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

我希望这适用于所有想要在项目中添加图标的人。一旦我获得足够的 rep.points 来启用它,我将添加一些描述性图像:-|

【讨论】:

    【解决方案5】:

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

    【讨论】:

    • 我缺少的部分是当我简单地编辑旧图标并覆盖它(创建新图标)时,旧图标如何仍然显示。迷茫...
    【解决方案6】:

    8 年过去了,我也遇到了同样的问题。 Windows (7) 或 Visual Studio (2017) 似乎正在缓存该图标。 我能找到清除此缓存的唯一方法是重启。

    【讨论】:

      猜你喜欢
      • 2010-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-27
      • 1970-01-01
      • 1970-01-01
      • 2016-09-12
      相关资源
      最近更新 更多