表单对话框复制了另一个从中调用的表单的内容

时间:2019-06-06 13:19:26

标签: c# visual-studio

我为登录凭据的弹出窗口添加了代码。我将Microsoft文档用作表单的“ ShowDialog()”方法的参考。

当用户单击“连接”按钮时,应该在弹出窗口中提示他/她输入所需的凭据。除非输入凭据,否则不允许用户在后台执行其他任何操作,因此可以选择对话框。

但是由于某种原因,原始表单的内容(某些用户控件)被复制到对话框中。 (查看图片)

private void Ss_ConnectionPressed(object source, EventArgs e)
{
    SSHCredentials credentials = new SSHCredentials();
    if (credentials.ShowDialog() == DialogResult.OK)
    {
        ss.SetUser(credentials.GetUsername());
        ss.SetPassword(credentials.GetPassword());
    }
    else
    {
        ss.SetUser(null);
        ss.SetPassword(null);
    }
}

以下是现在的屏幕截图:https://i.stack.imgur.com/0T9Q8.png https://i.stack.imgur.com/OE5Ls.png https://i.stack.imgur.com/EdBff.png

1 个答案:

答案 0 :(得分:0)

在您的第一个屏幕截图中,我看到您的主表单类名为Form,它将覆盖类System.Windows.Forms.Form的默认定义。因此,类SSHCredentialsForm继承特征,而应该从System.Windows.Forms.Form继承。

最好的解决方案是将Form.cs命名为更合适的名称,例如SensorForm.cs,并将其中的类重命名为相同的类。