You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WPF中如何设置SmallImageSource属性?运行时图片找不到的原因?

WPF RibbonApplicationMenu图标运行时找不到的问题解决

错误原因

设计视图能显示图标但运行时报找不到资源,核心原因是图片文件的生成属性配置错误:

  • 设计阶段Visual Studio会直接读取项目中的文件路径,所以能正常显示;但运行时程序会根据文件的生成属性来决定如何处理资源,如果生成属性未正确设置,程序无法在运行时定位到图片。
  • 另外,若使用相对路径但未确保运行时工作目录下存在对应文件,也会导致找不到资源。

正确设置方法

1. 配置图片文件的生成属性

在解决方案资源管理器中找到Resources/Buttons/Export.png文件,右键选择「属性」,按以下两种方案之一配置:

  • 方案一(嵌入资源,推荐):
    • 「生成操作」设置为 Resource
    • 「复制到输出目录」设置为 不复制
      这种方式会把图片嵌入到程序集里,无需额外复制文件,运行时直接从程序集读取。
  • 方案二(独立文件):
    • 「生成操作」设置为 Content
    • 「复制到输出目录」设置为 如果较新则复制
      这种方式会把图片复制到输出目录的对应路径下,运行时从输出目录读取。

2. 修正SmallImageSource的路径写法

根据生成属性的不同,调整路径:

  • 如果用方案一(Resource),可以使用简化的pack URI路径:
<Ribbon.ApplicationMenu>
    <RibbonApplicationMenu SmallImageSource="/Resources/Buttons/Export.png">
    </RibbonApplicationMenu>
</Ribbon.ApplicationMenu>

或者完整的pack URI写法:pack://application:,,,/Resources/Buttons/Export.png,效果一致。

  • 如果用方案二(Content),保持原相对路径即可,但要确保输出目录下存在Resources/Buttons/Export.png。

内容的提问来源于stack exchange,提问作者user2155362

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 12:05:19