C# 为什么我的xamarin android显示图像而UWP不显示?

C# 为什么我的xamarin android显示图像而UWP不显示?,c#,android,xamarin.forms,uwp,C#,Android,Xamarin.forms,Uwp,我有一个非常奇怪的情况,我已经失去了无数个小时,我也找不到任何关于stackoverflow 当我在空白页面上通过C创建一个简单图像时,类似于: mainStackLayout.Children.Add(new Image() { Source = "mypic.png" }); Content = mainStackLayout; 在我编译并在我的android设备上运行之后,它可以完美地工作,而在UWP上构建和运行时根本不会显示任何图像 我在UWP/Assets和UWP/root目录中复制

我有一个非常奇怪的情况,我已经失去了无数个小时,我也找不到任何关于stackoverflow

当我在空白页面上通过C创建一个简单图像时,类似于:

mainStackLayout.Children.Add(new Image() { Source = "mypic.png" });
Content = mainStackLayout;
在我编译并在我的android设备上运行之后,它可以完美地工作,而在UWP上构建和运行时根本不会显示任何图像

我在UWP/Assets和UWP/root目录中复制了相同的图像,但仍然没有复制任何内容。 有什么想法吗

我在UWP/Assets和UWP/root目录中复制了相同的图像,但仍然没有复制任何内容。有什么想法吗

将图片从Android\Drawables复制到UWP中的资产文件夹时。和BuildAction属性也可以复制到UWP项目中。所以您需要将属性设置为内容

否则,pic路径为Assets/xxx.png。无法使用'Source=xxx.png'访问它。因此,您需要修改图像源

mainStackLayout.Children.Add(new Image() { Source = "Assets/icon.png" });
Content = mainStackLayout;
为了获得更大的灵活性,可以使用Device.RuntimePlatform属性为某些或所有平台选择不同的映像文件或路径,如本代码示例所示

mainStackLayout.Children.Add(new Image() { Source = Device.RuntimePlatform == Device.UWP ? ImageSource.FromFile("Assets/xxx.png") : ImageSource.FromFile("waterfront.jpg")});
有关更多信息,请参考

我在UWP/Assets和UWP/root目录中复制了相同的图像,但仍然没有复制任何内容。有什么想法吗

将图片从Android\Drawables复制到UWP中的资产文件夹时。和BuildAction属性也可以复制到UWP项目中。所以您需要将属性设置为内容

否则,pic路径为Assets/xxx.png。无法使用'Source=xxx.png'访问它。因此,您需要修改图像源

mainStackLayout.Children.Add(new Image() { Source = "Assets/icon.png" });
Content = mainStackLayout;
为了获得更大的灵活性,可以使用Device.RuntimePlatform属性为某些或所有平台选择不同的映像文件或路径,如本代码示例所示

mainStackLayout.Children.Add(new Image() { Source = Device.RuntimePlatform == Device.UWP ? ImageSource.FromFile("Assets/xxx.png") : ImageSource.FromFile("waterfront.jpg")});

有关更多信息,您可以参考。

您是否将BuildAction设置为Content?您的确切意思是什么?我对这个很陌生抱歉呵呵。您能详细说明一下吗?右键单击解决方案资源管理器中的图像文件,并将“生成操作”设置为“内容”。正如文档中所解释的:好吧,我按照你的建议做了,听起来很有希望,但没有。你在资源管理器中复制了文件,而不是在VS中?如果您这样做,VS不知道它们存在,也不会将它们包含在构建中。您是否将BuildAction设置为Content?您的确切意思是什么?我对这个很陌生抱歉呵呵。您能详细说明一下吗?右键单击解决方案资源管理器中的图像文件,并将“生成操作”设置为“内容”。正如文档中所解释的:好吧,我按照你的建议做了,听起来很有希望,但没有。你在资源管理器中复制了文件,而不是在VS中?如果您这样做,VS不知道它们的存在,并且不会将它们包含在构建中