2011-04-08 132 views
1

我不知道这是否是最好的方法,但我想要做的是创建一个Shape对象的集合,然后将其绑定到一个Canvas,然后每当我更新这些Shapes或添加新的Shapes(罕见),Canvas上的Shape对象也会更新。是否可以绑定到Canvas.Children?

Btw Shape物体并不都是一样的,有的Lines,Rectangles等不知道是否重要。

这样做的最好方法是什么?

+2

可能的重复:http://stackoverflow.com/questions/889825/wpf-is-it-possible-to-bind-a-canvass-children-property-in-xaml – ChrisWue 2011-04-08 19:57:25

+0

谢谢我看到一个,但它似乎它只处理一种类型的形状?他也没有提供转换器的来源。 – 2011-04-08 20:13:56

回答

2

如果你看看Is it possible to bind a Canvas's Children property in XAML?这个问题,那么Ivan的答案就是使用你可以绑定的附属属性,它会自动更新画布子项。我没有尝试过,但看起来应该工作。看来是对我最好的解决方案。另一种选择是使用ItemsControl,并将DataTemplate用于您想要显示的每种类型 - 但是这看起来有点儿烦人。

+0

谢谢我会尝试,并让你知道它是否有效。目前我使用Path。 – 2011-04-09 03:57:31