BitmapImage同步使用SetSource但是对于本地(项目)文件(或者,如何将本地项目文件作为Stream)

时间:2012-12-06 04:59:53

标签: windows-phone-7 windows-phone-8

我正在尝试在我的应用程序中的某个位置同步将位图文件加载到内存中,并读取SetSource()将执行此操作(http://blogs.msdn.com/b/swick/archive/2011/04/07/image-tips-for-windows-phone-7.aspx)。

但是,我习惯使用适用于本地文件的UriSource属性:

BitmapImage backgroundImage = new BitmapImage(new Uri("Background.png", UriKind.Relative));

但是,SetSource函数采用“Stream”而不是Uri,我需要加载本地项目文件。你能告诉我最好的办法是什么吗?

1 个答案:

答案 0 :(得分:3)

以下是您执行此操作的方法:

Uri uri = new Uri("/YourProjectName;component/Background.png", UriKind.Relative);
StreamResourceInfo resourceInfo = Application.GetResourceStream(uri);
BitmapImage bmp = new BitmapImage();
bmp.SetSource(resourceInfo.Stream);