Может ли кто-нибудь помочь мне с использованием BitmapImage?
Я использую BitmapImage в проекте wpf. Когда я устанавливаю, что wpf-проект запускается, и запускаю его, код работает нормально, но когда я запускаю wpf-exe из кода проекта winform, ширина и высота bitmapimage равна 1.
Пример кода выглядит следующим образом:
public async Task Open(string path)
{
string strpath = System.AppDomain.CurrentDomain.BaseDirectory + path;
strpath = @"F:\test\Meteorology\Meteorology\bin\Debug\pic\56778.JPG";
if (System.IO.File.Exists(strpath))
{
Image = null;
RaisePropertyChanged("Image");
IsLoading = true;
RaisePropertyChanged("IsLoading");
await Task.Factory.StartNew(() =>
{
Image = new BitmapImage();
Image.BeginInit();
Image.CacheOption = BitmapCacheOption.OnLoad;
Image.UriSource = new Uri(strpath);
Image.EndInit();
Image.Freeze();
});
if (Math.Abs(Image.Width / Image.Height - 2) > 0.001)
WarningMessage("Warning", "The opened image is not equirectangular (2:1)! Rendering may be improper.");
RecentImageManager.AddAndSave(path);
IsLoading = false; RaisePropertyChanged("IsLoading");
RaisePropertyChanged("Image");
}
}