Я использую следующий код для потоковой передачи источника изображения:
BitmapImage Art3 = new BitmapImage();
using (FileStream stream = File.OpenRead("c:\\temp\\Album.jpg"))
{
Art3.BeginInit();
Art3.StreamSource = stream;
Art3.EndInit();
}
artwork.Source = Art3;
"artwork" - это объект XAML, в котором предполагается показ изображения.Предполагается, что код не блокирует изображение, он не блокирует его нормально, но и не показывает его, и изображение по умолчанию становится «ничем» ... Я предполагаю, что я неправильно использую поток,и что мой образ становится нулевым.Справка?
ОБНОВЛЕНИЕ:
Я сейчас использую следующий код, который мне предложил друг:
BitmapImage Art3 = new BitmapImage();
FileStream f = File.OpenRead("c:\\temp\\Album.jpg");
MemoryStream ms = new MemoryStream();
f.CopyTo(ms);
f.Close();
Art3.BeginInit();
Art3.StreamSource = ms;
Art3.EndInit();
artwork.Source = Art3;
По какой-то странной причине этот код возвращает следующую ошибку:
Изображение не может быть декодировано.Возможно, заголовок изображения поврежден.
Что я делаю не так?Я уверен, что изображение, которое я пытаюсь загрузить, не повреждено.