2016-05-02 3 views
0

У меня мало опыта программирования в среде C# + XAML для Windows Phone 8.1. В последнее время я работаю над приложением, загружающим изображения во время работы и аудиоресурсы. Хотя у меня нет проблем со звуком, я не могу загрузить изображения. Я уже пробовал много предлагаемых решений, но безуспешно.Windows Phone 8.1: загрузка BitmapImage во время выполнения

В основном в моем файле MainPage.xaml У меня есть эта строка:

<Image Source="{Binding Portrait}"/>

и относительной C# код, который я написал:

using Windows.UI.Xaml.Media.Imaging; ... Portrait.Source = new BitmapImage(new Uri("ms-appx:///Assets/Portraits/path/to specific/portrait.jpg", UriKind.Absolute));

Когда я запускаю заявку, Исключение NullReferenceException выбрано, и я почти уверен, что оно выбрано, потому что для Source установлено значение null. Я проверил путь, и я абсолютно уверен, что это правильно, более того, я установил действие сборки ресурсов на контент (я также пытался использовать Embedded Resource).

Я сохранил контекст просто, но скажите, требуется ли более подробная информация.

ответ

0

Выражение

Portrait.Source = new BitmapImage(...); 

означает, что вы объявили Portrait собственность как Image, как

public Image Portrait { get; set; } 

Кроме того, что значение свойства не инициализируется и Portrait является null, когда назначение производится , имущество должно фактически иметь тип ImageSource (или BitmapSource), поскольку ImageSource является типом Image.Source свойство, которое вы связываете в XAML:

public ImageSource Portrait { get; set; } 

и вы должны назначить это следующим образом:

Portrait = new BitmapImage(...); 
+0

он теперь работает, большое спасибо за помощь, сэр. – AreTor