jjzjj

c# - 将窗体设置为父级抛出异常 "Top-level control cannot be added to a control"

coder 2024-06-01 原文

我想从另一个表单访问一个表单的变量。单击主窗体中的按钮后,我想将主窗体设置为父窗体,然后调出另一个窗体(子窗体),我将在其中访问主窗体的变量。我的点击处理程序如下:

private void btnSystem_Click(object sender, EventArgs e)
{
    Form_EnterPassword EP = new Form_EnterPassword();
    EP.Parent = this;        //error: Top-level control cannot be added to a control
    EP.ShowDialog();
}

它编译正常,没有任何错误。但是,当我运行主窗体并单击“系统”按钮时,它会抛出异常。我在另一个代码(不是我的代码)中通过单击相同的按钮做了类似的事情,并且没有遇到任何错误(只是将主窗体设置为父窗体)。

我做错了什么?我的主代码中是否存在导致此问题的原因?

最佳答案

最好的方法是使用 EP.ShowDialog(this) 然后使用 Owner 属性。

关于c# - 将窗体设置为父级抛出异常 "Top-level control cannot be added to a control",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10746053/

有关c# - 将窗体设置为父级抛出异常 "Top-level control cannot be added to a control"的更多相关文章

随机推荐