-1

在我的应用程序中,我遇到了一些 Windows 窗体的问题。它们有时会掉到另一个窗户下。

表格是否有一些 Z 坐标?或者这是如何工作的?

谢谢你。

编辑:我应该补充一点,我正在使用智能客户端软件工厂。

4

1 回答 1

4

您可以使用该Form.Show(IWin32Window owner)方法将表单生成为另一个表单的子表单,这将始终将其保持在该表单之上。

例如:

class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        var f2 = new Form2();
        f2.Show(this);
    }
}

class Form2 : Form
{
    public Form2()
    {
        InitializeComponent();
    }
}

当一个实例 Form1被创建时,它会创建一个类的实例并将其显示Form2为一个子类。无论哪种形式有焦点,Form1都会落后。Form2

编辑:我截取了一些效果的截图,并附有响应每个表单的事件GotFocusLostFocus事件的标签,以证明可爱的蓝色边框还不够:

在此处输入图像描述

于 2013-06-04T09:12:52.167 回答