我正在尝试在后台线程(BackgroundWorker)中创建一个 BitmapImage,但我的函数只返回一次 null 并且不进入 Deployment.Current.Dispatcher.BeginInvoke。当我在 UI 线程中使用此功能时,一切都很好。文件路径正确(为.jpg图片)
public static BitmapImage convertFileToBitmapImage(string filePath)
{
BitmapImage bmp = null;
Uri jpegUri = new Uri(filePath, UriKind.Relative);
StreamResourceInfo sri = Application.GetResourceStream(jpegUri);
Deployment.Current.Dispatcher.BeginInvoke(new Action( ( ) =>
{
bmp = new BitmapImage();
bmp.SetSource(sri.Stream);
}));
return bmp;
}