私は次のクラスを持っています:
public class Sticky : INotifyPropertyChanged {
// ... some members
private BitmapImage _frontPic;
[DataMember]
public BitmapImage FrontPic {
get {
return _frontPic;
}
set {
_frontPic = value;
Changed("FrontPic");
Changed("FrontBrush");
}
}
}
このXAMLにデータバインドしようとしています:
<Image Width="173" Height="173" Source="{Binding FrontPic}" />
私のPhoneApplicationPageでこのコードを使用してPhotoChooserTaskを起動した後:
public Sticky Sticky { get; set; }
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) {
Sticky = new Sticky();
DataContext = Sticky;
}
private void ShowFrontPicPicker(object sender, RoutedEventArgs e) {
var t = new PhotoChooserTask();
t.PixelHeight = 173;
t.PixelWidth = 173;
t.ShowCamera = true;
t.Completed += (s, ev) => {
if (ev.TaskResult == TaskResult.OK) {
var img = new BitmapImage();
img.SetSource(ev.ChosenPhoto);
Sticky.FrontPic = img;
}
};
t.Show();
}
ただし、私の画像は空白のままです。データバインディングなしで Image.Source プロパティを Image に直接割り当てると、すべてが機能します。他のプロパティのデータバインドは機能しますが、問題があると思われるのは画像だけです。画像の DataBinding を機能させるにはどうすればよいですか?