我正在开发Windows Phone应用程序。
我正在使用图像,并且使用“属性”面板选择图片时,出现以下XAML:
<Image x:Name="GameImage" Margin="8" Source="/MyApp;component/Assets/Icons/GameImage.png"/>
为什么我得到“
/MyApp;component/...
”? (有更好的方法吗?)如果我尝试执行
Image.Source="Assets/Icons/GameImage.png"
,为什么它不起作用? 最佳答案
这是因为您的映像已将其构建操作设置为“资源”(这是默认设置)。如果将其切换为“内容”,则可以在XAML中设置源,如下所示:
<Image x:Name="GameImage" Margin="8" Source="/Assets/Icons/GameImage.png"/>
要在代码中进行设置,您可以执行以下操作:
BitmapImage tn = new BitmapImage();
tn.SetSource(Application.GetResourceStream(new Uri(@"Assets/Icons/GameImage.png", UriKind.Relative)).Stream);
Image.Source = tn;
由于性能原因,您应该使用Content。有关更多详细信息,请参见本文:http://www.windowsphonegeek.com/tips/wp7-working-with-images-content-vs-resource-build-action