我有byte []列的数据表。 在应用程序页面上,我遍历行并将列数据绑定到SourceProperty
for (i = 0;..) {
Image img = new Image();
img.Width = 100;
img.Height = 100;
Binding bnd = new Binding("Fields[" + i + "].Blob"); // Blob column
bnd.Converter = new ByteToImageConverter();
img.SetBinding(Image.SourceProperty, bnd);
}
在每张图片附近,我都有一个调用CameraCaptureTask camTask
的按钮。
在camtask.Show()
之前我将当前图像分配给全局指针_imgCurrent = img
camtask.Completed += (s, e)
{
if (e.TaskResult != TaskResult.OK) return;
BitmapImage bmp = new BitmapImage();
bmp.SetSource(e.ChosenPhoto);
_imgCurrent.Source = bmp;
_imgCurrent.SetValue(Image.SourceProperty, bmp);
}
但在这种情况下,DataContext不会更新。我想我需要实现INotifyPropertyChanged
?我需要从该接口继承Image,或者我可以在Source update中触发它吗?
答案 0 :(得分:0)
问题出在Binding创建:我忘了Mode=TwoWay
。