0

我在那里有一个 WPF 应用程序和 Canvas。在画布中,我有一个矩形。当程序已经在处理时,如何更改他的属性,例如高度或宽度?就像是:

int index = 0; 
var childByIndex = canvas.Children[index]; 
childByIndex.SetValue(Height, 15);
4

2 回答 2

2

您必须告诉您要设置哪种类型的 dp,如下所示:

((Rectangle)canvas.Children[index]).SetValue(Rectangle.HeightProperty, 15.0);
于 2013-09-21T17:55:13.013 回答
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);
于 2013-09-21T18:02:53.433 回答