Xamarin.Forms Windows XAML平台图片加载失败问题咨询
Xamarin.Forms Windows XAML端图片资源配置方案
你当前使用的//Assets//food.jpg路径写法不符合平台解析规则,按照以下步骤配置即可正常加载:
图片资源正确存放位置
- 所有Windows端专属本地图片,统一存放在Windows平台项目根目录下的
Assets文件夹中,当前暂不适配iOS、Android端的情况下,不需要把图片放到跨平台共享项目内。 - 图片导入项目后必须修改文件属性:选中图片文件打开属性面板,将生成操作设置为
Content,复制到输出目录选项设置为「如果较新则复制」,属性配置错误会直接导致资源无法被打包识别。
正确的资源路径写法
- 后台代码动态创建Image控件时,不需要加前置双斜杠,直接写相对路径,路径分隔符使用单正斜杠即可,正确代码如下:
var image = new Image { Source = "Assets/food.jpg" };
注意:不要使用Windows本地文件路径常用的反斜杠
\,也不要添加多余的前置路径符号,Xamarin.Forms内置的资源解析器会自动映射Windows端的Content资源路径。
- 如果是在XAML页面中静态声明Image控件,对应写法为:
<Image Source="Assets/food.jpg" />
常见踩坑提示
- 路径大小写需要和实际文件名、文件夹名完全匹配,部分Windows运行环境下大小写不匹配会出现偶发加载失败问题,建议资源文件名统一使用小写命名。
- 不要给路径加
ms-appx:///这类UWP原生协议前缀,Xamarin.Forms会自动处理平台路径转换,手动加前缀反而会导致解析失败。
内容的提问来源于stack exchange,提问作者Nikhil Pande
相关产品推荐
相关产品推荐

