我正在将一个GDI应用程序移植到WPF上,我在Form上显示了几十个图像,然后使用GDI Pens和Brushes在这些图像的顶部绘制了多边形,圆形,矩形等 .
我开始掌握WPF绑定并希望在我的ViewModel中存储所有这些图像和标记图形 .
我的VM包含我的自定义DrawingEntitys的ObservableCollection,DrawingEntity包含BitmapSource,Height,Width,CanvasTopLeftY和CanvasTopLeftX的DependencyProperties,我在集合中经常更新 . 我知道我的绑定工作正常,我无法弄清楚如何绑定并将此集合绘制到Canvas上 .
我已经玩过ItemsControl和ItemsSource到死,这里有太多不同的方式列出来 . 我可以在画布上显示DrawingEntity.Bitmaps,但Canvas.Top不会绑定到DrawingEntity中的CanvasTopLeftY,所有内容都重叠在0,0 . 我想我错过了一个明显的策略 . 有任何想法吗?
1 回答
看看this answer中的XAML并对其进行一些细微的修改 .