我將圖像作爲byte []數組存儲,因爲我無法將它們存儲爲BitmapImage。 ShotItem類將存儲在IsolatedStorage中的observableCollection中。Windows Phone 8 - 通過綁定將字節[]數組加載到XAML圖像中
namespace MyProject.Model
{
public class ShotItem : INotifyPropertyChanged, INotifyPropertyChanging
{
private byte[] _shotImageSource;
public byte[] ShotImageSource
{
get
{
return _shotImageSource;
}
set
{
NotifyPropertyChanging("ShotImageSource");
_shotImageSource = value;
NotifyPropertyChanged("ShotImageSource");
}
}
...
}
}
在我的XAML文件,我有以下:
<Image Source="{Binding ShotImageSource}" Width="210" Height="158" Margin="12,0,235,0" VerticalAlignment="Top" />
可惜我不能將圖像作爲一個字節加載直入在XAML圖像容器。我不知何故需要將ShotImageSource byte []轉換爲BitmapImage。我加載了不少圖像,所以這也必須異步完成。
我試圖使用轉換器綁定,但我不確定如何讓它工作。任何幫助將不勝感激 :)。
你需要有一個創建從字節數組中的BitmapSource綁定轉換器。如果字節數組包含編碼圖像(PNG或JPEG),則可以從中創建一個流並調用「BitmapSource.SetSourceAsync」。如果字節數組是一個原始像素緩衝區,您可以創建一個WriteableBitmap並將像素複製到其「PixelBuffer」中。 – Clemens