2010-11-03 53 views
5

我正在使用winForm。我有2个自定义控件,我想动态添加。 第一个是在表格的开头添加的。第二个是当用户点击一个按钮时添加的。这里没什么魔法。问题是,当我instanciate并添加第二个控件,而不是出现在另一个之上,它出现在下面。如何在另一个TOP上添加自定义控件

必须有一种方式来添加控件,使其完全可见(其余部分)。 以下是我如何创建第二个控件(与第一个控件相同的方式)。我尝试使用show/hide方法,但这不会改变堆栈顺序。

private void lbRappel_Click(object sender, EventArgs e) 
    { 
     NoteCallBack noteCallBack = new NoteCallBack("test"); 
     this.Controls.Add(noteCallBack); 
     noteCallBack.Location = new Point(200, 250); 
    } 

非常感谢您的帮助。

马修

回答

16

你可以尝试BringToFront控制功能:

private void lbRappel_Click(object sender, EventArgs e) 
{ 
    NoteCallBack noteCallBack = new NoteCallBack("test"); 
    this.Controls.Add(noteCallBack); 
    noteCallBack.Location = new Point(200, 250); 
    noteCallBack.BringToFront(); 
} 
+0

我必须有这个方法旁边经过几次因为我没有看到它。非常感谢你。 – Mathieu 2010-11-03 19:49:56

1

你能在设计时创建他们想要的Z顺序,那么只会让他们在运行时可见?

相关问题