c#winforms子窗体加载问题

时间:2009-11-19 07:36:40

标签: c# winforms

我有一个基于对话框的应用程序。

我需要显示一个这样的子窗口:

(1)首先,应用程序的主对话窗口将显示,

(2)然后,子对话框窗口将自动显示在其上。

您知道,在父窗口的构造函数或load事件中调用子窗口的ShowDialog()是不够的。因为在这些情况下,子窗口将首先出现。

我该怎么做才能实现这一目标?

1 个答案:

答案 0 :(得分:2)

使用可以使用主对话框的显示事件,在主对话框前显示孩子。当第一次显示主对话框时,此事件仅引发一次。您还应该使用Show()(而不是ShowDialog)方法,然后调用子对话框的BringToFront()。

private void OnShown(EventArgs e) {
  ChildDialog child = new ChildDialog();
  child.Show(this);
  child.BringToFront();
}