我有一个WPF应用程序和Canvas。在画布中我有一个矩形。如何在程序处理过程中更改其属性,如高度或宽度?类似的东西:
int index = 0;
var childByIndex = canvas.Children[index];
childByIndex.SetValue(Height, 15);
答案 0 :(得分:1)
您必须告诉您要设置的dp类型如下所示:
((Rectangle)canvas.Children[index]).SetValue(Rectangle.HeightProperty, 15.0);
答案 1 :(得分:1)
最简单的方法是在XAML中为矩形命名,然后在代码中使用它:
<Canvas>
<Rectangle x:Name="rect" />
</Canvas>
rect.Height = 15;
如果由于某种原因您无法在XAML中为矩形指定名称,则可以在执行操作之前将找到的对象强制转换为Rectangle
:
Rectangle rect = (Rectangle)childByIndex;
rect.Height = 15;
如果您要更改附加属性,例如画布中的位置,您可以这样做:
Canvas.SetTop(rect, 10);
Canvas.SetLeft(rect, 20);