let mtvCapView = Rendering.MTViewerCaptureViewProvider(subRead)
let image = Image()
let imageBinding = Data.Binding("ImageElement")
imageBinding.Source <- mtvCapView
image.SetBinding(Image.SourceProperty, imageBinding)
....
Grid.SetColumn(image, 1)
grid.Children.Add(image)
MTViewerCaptureViewProvider类公开了一个属性ImageElement,该属性已设置并应在此处运行。如果我:
Grid.SetColumn(mtvCapView.ImageElement, 1)
grid.Children.Add(mtvCapView.ImageElement)
这很有效。为什么另一个没有?
答案 0 :(得分:2)
如果我查看变量和属性名称,我认为您正在尝试将图像设置为图像的图像源:
MTViewerCaptureViewProvider具有属性ImageElement
。如果名称正确,则会为您提供Image
,而不是ImageSource
。在绑定中,您尝试将此图像绑定到新创建的Image的ImageSource。
可能存在一个明确使用Image
到ImageSource
的TypeConverter,但我不这么认为。尝试使用Image
它的一半或获取ImageSource
的{{1}}。
如果使用VisualStudio,请在输出窗口中查看。绑定异常将在那里显示。