如何在画布中定位用户控件?

时间:2011-12-25 00:43:45

标签: silverlight

我有一些矩形用户控件。如何将它放在画布中的某个x-y坐标上?一旦我放置了用户控件,我需要根据先前放置的控件的渲染宽度/高度来评估位置以放置下一个控件。如何在Silverlight中正确执行这些操作。

1 个答案:

答案 0 :(得分:2)

要将控件放在画布面板中,可以使用Canvas类的附加属性Canvas.Left和Canvas.Top。因此,如果您希望将控件定位在100,20(相对于画布的左上角),则应输入:

<Canvas>
    <Rectangle Canvas.Left="100" Canvas.Top="20"/>
</Canvas>

或者,您可以在代码隐藏中使用它:

yourControl.SetValue(Canvas.LeftProperty,100.0);
yourControl.SetValue(Canvas.TopProperty,20.0);

如果你有几个控件,你试图动态排列,你可能要考虑使用Canvas的StackPanel或Grid intead。