[英]Windows Phone 8.1: loading a BitmapImage at runtime
我在使用Windows Phone 8.1的C#+ XAML環境進行編程方面經驗很少。 最近,我一直在開發一個在運行時加載圖像和音頻資源的應用程序。 盡管我在音頻方面沒有問題,但無法加載圖像。 我已經嘗試了許多建議的解決方案,但沒有成功。
基本上在我的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
。 我檢查了路徑,並完全確定它是正確的,此外,我將“資源構建操作”設置為“內容”(我也嘗試使用“嵌入式資源”)。
我保持上下文簡單,但是告訴我是否需要更多細節。
表達方式
Portrait.Source = new BitmapImage(...);
表示您已將Portrait
屬性聲明為Image
,例如
public Image Portrait { get; set; }
除了屬性值未初始化且分配時的Portrait
為null
,該屬性實際上應為ImageSource
(或BitmapSource
)類型,因為ImageSource
是您在XAML中綁定的Image.Source
屬性的類型:
public ImageSource Portrait { get; set; }
並且您應該像這樣分配它:
Portrait = new BitmapImage(...);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.