我编写了一个WPF UserControl,并希望在单击按钮时在运行时将一个或多个添加到我的Window中.我怎样才能做到这一点?
编辑:进一步说明我想将usercontrols添加到Canvas,并放入绝对位置.画布是我家中楼层的图纸,每个用户控件都有属性,用于指示房屋的位置.所以我希望所有控件都放在画布上的正确位置.
我在想这样的事情
var light = new LightUserControl(2);
HouseCanvas.Children.Add(light); // this should be positioned in a specific place
Run Code Online (Sandbox Code Playgroud)
Ian*_*kes 41
将控件添加到Canvas后,需要使用Canvas.Top和Canvas.Left附加属性指定顶部和左侧坐标,如下所示.
var light = new LightUserControl(2);
HouseCanvas.Children.Add(light);
Canvas.SetLeft(light, 20);
Canvas.SetTop(light, 20);
Run Code Online (Sandbox Code Playgroud)
Ram*_*eza 13
如果要将控件添加到Grid而不是Canvas,可以通过Grid静态类指定所有Grid属性,如下所示:
Label newLabel = new Label();
newLabel.Content = "The New Element";
Main.Children.Add(newLabel);
Grid.SetColumn(newLabel, 0);
Grid.SetRow(newLabel, 0);
Run Code Online (Sandbox Code Playgroud)