C # Windows Form внезапно исчезает - PullRequest
0 голосов
/ 19 июля 2009

Я использую C # + VSTS2008 + .Net 2.0 для разработки приложения Windows Forms. В обработчике событий button1 Form1 я создаю Form2, затем появляется Form2. Затем, когда обработчик события триггера для button2 формы Form2 (button2 - элемент кнопки пользовательского интерфейса Form2), после выполнения обработчика события button2, Form2 исчезнет. Вот часть моего кода, который создает Form2. Любые идеи, что неправильно, чтобы заставить Form2 исчезнуть?

// button1 belongs to Form1
private void button1_Click(object sender, EventArgs e)
{
    Form2 form2 = new Form2("www.google.com");
    form2.ShowDialog();
}

Ответы [ 2 ]

4 голосов
/ 19 июля 2009

Form2 открывается как диалог. Может ли нажатая кнопка быть также определена как CancelButton (свойство CancelButton будет в форме form2). Это автоматически закрывает диалоговое окно после завершения работы с обработчиками событий.

3 голосов
/ 19 июля 2009

Без подробностей невозможно сказать наверняка, но если у button2 в Form2 есть значение, присвоенное свойству DialogResult, это заставит форму автоматически скрываться при нажатии кнопки.,Откройте Form2 в конструкторе, нажмите кнопку и отметьте в сетке свойств.Если свойство DialogResult отличается от "None", это ожидаемое поведение.

Из документации MSDN свойства Button.DialogResult:

Если DialogResultдля этого свойства установлено значение, отличное от None, и если родительская форма была отображена с помощью метода ShowDialog, нажатие кнопки закрывает родительскую форму без необходимости подключать какие-либо события.Для свойства DialogResult формы устанавливается значение DialogResult кнопки при нажатии кнопки.

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