【问题标题】:Setting Icon for wpf application (VS 08)wpf 应用程序的设置图标 (VS 08)
【发布时间】:2011-02-09 23:32:27
【问题描述】:

在更进一步之前,我会提到我已经尝试了以下解决方案:

How do I set the icon for my application in visual studio 2008?

Set application icon from resources in VS 05

我正在尝试为我的应用程序设置图标。

AFAIK,我可能需要 3 张图片?

  • 1 张图片是资源管理器中单击 .exe 时的实际图片(exe 的缩略图)
  • 左上角有 1 张图片(小)(16 x 16?不完全确定)
  • 开始菜单停靠栏中的 1 张图片,位于应用左侧(可能是 32x32?再次不确定)

没关系。

现在我选择了一个图标。在以上一种情况下如何使用它?

我已尝试将其添加到资源中,但似乎没有任何反应。在第一个 SO 解决方案之后,

"首先进入资源视图(从菜单:视图 --> 其他窗口 --> 资源视图)。然后在资源视图中浏览资源,如果有的话。如果已经有图标类型的资源,由 Visual Studio 添加,然后打开并编辑它。否则右键单击并选择添加资源,然后添加一个新图标。”

资源视图为空,我无法在此视图中右键单击。

如果我右键单击解决方案 > 属性 > 资源 > 我可以添加图标图像,但它不会显示在上面列出的任何位置。 (或任何我能看到的地方)

1) 如何为 WPF 应用程序设置应用程序图标?

【问题讨论】:

  • 其实就是Win 7 Talk; XP我们只有两个我认为? 16 x 16 和 exe 的大缩略图(不确定大小)
  • 对于任何感兴趣的人,我设置了一个图标,图像为 64 x 64,其他所有内容(较小的尺寸)都是通过缩放我提供的原始图像自动制作的。
  • 查看 SuperUser superuser.com/questions/142731/… 上的这个问题,以便轻松将内置 Windows 图标添加到您的应用中。
  • 这很有帮助:rw-designer.com/image-to-icon

标签: c# wpf visual-studio-2008 resources icons


【解决方案1】:

假设您使用 VS Express 和 C#。 该图标在项目属性页面中设置。要打开它,请右键单击解决方案资源管理器中的项目名称。在打开的页面中,有一个应用程序选项卡,在此选项卡中您可以设置图标。

【讨论】:

  • 感谢您的回答...我发现的所有其他内容都解释了资源中的混乱情况,但遵循您的解决方案资源完全不理会,只需在“应用程序”选项卡中进行设置。干杯
  • 是的。这对我有用。但是,当从 VS 调试器运行应用程序(即按 F5)时,似乎仍会显示“通用”图标。但是,在没有调试器的情况下运行(即 ctrl + f5,或从桌面等)会按预期显示自定义图标。
  • 这是因为,当调试器运行您的代码时,它使用您构建的 vshost.exe 版本(以帮助调试),该版本使用默认应用程序图标,而不是应用程序选项卡中设置的图标,如这是为 yourapplication.exe 设置的
  • 这对我有用。即使在调试模式下。因为我没有设置任何默认图标。
【解决方案2】:

@742 的回答效果很好,但是从 VS 调试器运行时,如 cmets 中所述,仍会显示通用图标。

如果你想在按下 F5 时也有你的图标,你可以在主窗口中添加:

<Window x:Class="myClass"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Icon="./Resources/Icon/myIcon.png">

您指明图标路径的位置(图标可以是*.png*.ico。)

(请注意,您仍然需要设置应用程序图标,否则它仍将是资源管理器中的默认设置)。

【讨论】:

  • 两者都设置很好,因为似乎需要图标同时出现在窗口和 EXE 文件中。
  • 只需确保将图标设置为“资源”的构建操作,正如@AdamDylla 所说:stackoverflow.com/a/39897641/1703887
【解决方案3】:

注意:(将 file.ico 替换为您的实际图标文件名)

  1. 使用“资源”的构建操作将图标添加到项目中。
  2. 在项目属性中,将应用程序图标设置为 file.ico
  3. 在主窗口 XAML 集中:窗口上的Icon=".\file.ico"

【讨论】:

    【解决方案4】:

    在收到带有消息的 XamlParseException 后:'Provide value on 'System.Windows.Baml2006.TypeConverterMarkupExtension' 使用给定的解决方案,以编程方式设置图标对我有用。我就是这样做的:

    1. 将图标放在项目目录下icon_path>的文件夹中
    2. 在解决方案中模仿文件夹路径icon_path>
    3. 在您创建的解决方案文件夹中添加一个新项目(您的图标)
    4. 在WPF窗口的代码后面添加如下代码:

    Icon = new BitmapImage(new Uri("icon_path>", UriKind.Relative));

    如果您在实施此解决方案时遇到任何困难,请告诉我,以便我提供帮助。

    【讨论】:

    【解决方案5】:

    你也可以试试这个:

    private void Page_Loaded_1(object sender, RoutedEventArgs e)
        {
            Uri iconUri = new Uri(@"C:\Apps\R&D\WPFNavigation\WPFNavigation\Images\airport.ico", UriKind.RelativeOrAbsolute);
            (this.Parent as Window).Icon = BitmapFrame.Create(iconUri);
        }
    

    【讨论】:

      猜你喜欢
      • 2014-07-30
      • 1970-01-01
      • 2010-09-16
      • 1970-01-01
      • 1970-01-01
      • 2019-01-12
      • 2010-10-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多