Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Add WPF control at runtime

Tags:

wpf

I've written a WPF UserControl, and want to add one or more of it to my Window at runtime when I click a button. How can I do that?

Edit: Further specification I want to add the usercontrols to a Canvas, and put in a absolute position. The canvas is a drawing of the floors in my house, and each usercontrol has properties to indicate where in the house it is positioned. So I want all the controls to be positioned in the correct position on the canvas.

I'm thinking something like this

var light = new LightUserControl(2); HouseCanvas.Children.Add(light); // this should be positioned in a specific place 
like image 297
Frode Lillerud Avatar asked Nov 22 '08 09:11

Frode Lillerud


1 Answers

After you add the your control to the Canvas you need to specify the top and left co-ordinates using the Canvas.Top and Canvas.Left attached properties as follows.

var light = new LightUserControl(2); HouseCanvas.Children.Add(light); Canvas.SetLeft(light, 20); Canvas.SetTop(light, 20); 
like image 138
Ian Oakes Avatar answered Oct 04 '22 04:10

Ian Oakes