tags:

views:

125

answers:

3

I have a button called button1 and two panels called: panelA and panelB (visible is false by default) and the following code (WinForms):

panelA.Controls.Add(button1);
panelB.Controls.Add(button1);
panelB.Visible = true; // I see the button1
panelA.Visible = true; // I don't (ofcoz panelB.Visible is still false)
MessageBox.Show(panelA.Controls.Contains(button1).ToString); //False, why?

I don't know why? Maybe it's a stupid question for you but I'm a newbie so I don't really have any idea about this problem? Can you help me? Thanks!

+1  A: 

I don't know why your seccond button are not visible. But, Why not to use two differents buttons with the same click event?

Have you tried if the problem is still there is you try to add two different instances of a button?

Good Luck.

Jonathan
+1  A: 

The object button1 can have only one visual parent. Therefore you shouldn't add it to 2 different parents.

So, you need to have 2 button objects.

Vlad
A: 

Only One Instance of anobject can be shown , So you have to create another Instance foryour button. Both of them will act the same ( because they are One Control - but will have different acts in order to have different instance ).

And this is because you only can have One instance of a control. you really do not need same instance of an object.

Nasser Hadjloo