将分散/重叠图像绑定到WPF Canvas

时间:2010-05-05 15:21:03

标签: wpf graphics mvvm

我正在将一个GDI应用程序移植到WPF上,我在Form上显示了几十个图像,然后使用GDI笔和画笔在这些图像的顶部绘制了多边形,圆形,矩形等。

我开始掌握WPF绑定并希望在我的ViewModel中存储所有这些图像和标记图形。

我的VM包含我的自定义DrawingEntitys的ObservableCollection,DrawingEntity包含BitmapSource,Height,Width,CanvasTopLeftY和CanvasTopLeftX的DependencyProperties,我在集合中经常更新。我知道我的绑定工作正常,我无法弄清楚如何绑定并将此集合绘制到Canvas上。

我玩过ItemsControl和ItemsSource,这里列出的方法太多了。我可以在画布上显示DrawingEntity.Bitmaps,但Canvas.Top不会绑定到DrawingEntity中的CanvasTopLeftY,所有内容都重叠在0,0。我想我错过了一个明显的策略。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

查看this answer中的XAML并稍作修改。