Диалог формы копирует содержимое другой формы, из которой он был вызван - PullRequest
0 голосов
/ 06 июня 2019

Я добавил код для всплывающего окна для учетных данных.Я использовал документацию 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 голосов
/ 06 июня 2019

На вашем первом скриншоте я вижу, что ваш основной класс формы называется Form, который перезаписывает определение класса System.Windows.Forms.Form по умолчанию.Таким образом, класс SSHCredentials наследует черты от Form, но вместо этого он должен наследовать от System.Windows.Forms.Form.

. Лучшее решение - присвоить вашему Form.cs что-то более подходящее, например SensorForm.cs, и переименоватькласс внутри него к тому же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...