WPF 项目设置应用程序图标和设置程序集图标

在 WPF 项目中更改生成的可执行文件(.exe)图标需要完成两个关键步骤:设置应用程序图标设置程序集图标。以下是详细操作指南:


第一步:准备图标文件

  1. 准备一个 .ico 格式的图标文件(必须使用 ICO 格式)
  2. 推荐尺寸:至少包含 256x25648x4832x3216x16 多种分辨率
  3. 将图标文件添加到项目中(建议放在 Resources 文件夹)

第二步:设置应用程序图标(窗口图标)

在 App.xaml 中设置全局图标:

xml 复制代码
<Application x:Class="YourNamespace.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml"
             Icon="Resources/app-icon.ico"> <!-- 这里设置图标路径 -->
</Application>

此设置会影响所有窗口的默认图标(除非窗口单独设置)


第三步:设置程序集图标(EXE文件图标)

这是关键步骤!修改项目文件设置:

  1. 右键项目 → 属性
  2. 转到 "应用程序" 选项卡
  3. "图标" 下拉框中选择您的图标文件
  4. 如果图标未出现在列表中,点击 "浏览..." 手动选择

替代方法:直接编辑项目文件(.csproj)

如果图标未正确应用,可手动编辑项目文件:

  1. 右键项目 → "编辑项目文件"
  2. <PropertyGroup> 中添加:
xml 复制代码
<ApplicationIcon>Resources\app-icon.ico</ApplicationIcon>
  1. 确保添加文件引用(如果使用 MSBuild 格式):
xml 复制代码
<ItemGroup>
  <Content Include="Resources\app-icon.ico">
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
  </Content>
</ItemGroup>

第四步:验证和常见问题处理

  1. 生成后检查

    • 编译后在 bin\Debugbin\Release 查看生成的 exe 图标
    • 如果未更新,尝试:
      • 清理解决方案 → 重新生成
      • 删除 binobj 文件夹后重新生成
  2. 常见问题解决

    xml 复制代码
    <!-- 确保项目文件中没有覆盖设置 -->
    <PropertyGroup>
      <!-- 删除这行如果存在 -->
      <ApplicationIcon /> 
    </PropertyGroup>
    • 图标文件属性设置:
      • 生成操作 = Resource (或 Content)
      • 复制到输出目录 = 不复制 (推荐)
  3. 多分辨率支持

    • 使用专业的 ICO 编辑工具(如 Greenfish Icon Editor
    • 确保 ICO 包含从 16x16 到 256x256 的多种尺寸

第五步:为安装包设置图标(可选)

如果创建安装包,需要额外设置:

  1. ClickOnce

    xml 复制代码
    <!-- 在发布配置中 -->
    <PropertyGroup>
      <ApplicationIcon>Resources\install.ico</ApplicationIcon>
      <PublishIcon>Resources\install.ico</PublishIcon>
    </PropertyGroup>
  2. MSIX 打包

    • 在 Package.appxmanifest 中设置:

      xml 复制代码
      <Properties>
        <Logo>Assets\StoreLogo.png</Logo>
      </Properties>

最终效果对比

设置位置 影响范围 必须性
项目属性 → 应用程序图标 EXE文件图标 必需
App.xaml 中的 Icon 窗口标题栏图标 可选
窗口级别的 Icon 单个窗口图标 可选

💡 关键提示 :要使生成的 .exe 文件显示自定义图标,必须通过项目属性设置(第三步)。仅设置 App.xaml 或窗口图标只会影响应用程序内部的窗口标题栏图标。

相关推荐
dotent·7 小时前
C#基于WPF UI框架的通用基础上位机测试WPF框架
ui·c#·wpf
咩图1 天前
WPF+Prism8.0.0.1909+C#创建一个桌面程序
c#·wpf·prism
雁于飞1 天前
分布式基础
java·spring boot·分布式·spring·wpf·cloud native
oioihoii2 天前
WPF入门指南:解析默认项目结构
wpf
极客智造2 天前
深入解析 ReactiveUI:WPF 响应式 MVVM 开发的 “终极方案”
wpf
Macbethad3 天前
使用WPF编写一个多维度伺服系统的程序
大数据·hadoop·wpf
lingxiao168884 天前
WPF Prism框架应用
c#·wpf·prism
Macbethad4 天前
使用WPF编写一个Ethercat主站的程序
wpf
难搞靓仔4 天前
WPF 弹出窗体Popup
wpf·popup
Macbethad4 天前
使用WPF编写一个MODBUSTCP通信的程序
wpf