изменить активную форму, чтобы показать другую форму - PullRequest
3 голосов
/ 26 ноября 2011

У меня есть Form1 и еще один, который я добавил.Form1 запускается program.cs в начале.Мне нужно скрыть Form1 и показать options форму нажатием кнопки.

    private void submitPassword_Click(object sender, EventArgs e)
    {
        options optionForm = new options();
        optionForm.Show();
    }

приведенный выше код открывает форму параметров сверху, но мне нужно заменить текущую форму.как мне этого добиться?

Ответы [ 4 ]

7 голосов
/ 26 ноября 2011

Скройте текущую форму, используя this.Close(), прежде чем показывать новую, и убедитесь, что вы используете Application.Run без параметров, чтобы программа не закрывалась при закрытии основной формы.

2 голосов
/ 27 июля 2014

Вы можете использовать метод «Скрыть» и «Показать»:

private void submitPassword_Click(object sender, EventArgs e)

{

    options optionForm = new options();

    this.Hide();

    optionForm.Show();
}
2 голосов
/ 26 ноября 2011
private void submitPassword_Click(object sender, EventArgs e)
{
    options optionForm = new options();
    optionForm.Show();
    this.Hide();
}
1 голос
/ 26 ноября 2011

Подобные решения, когда одна форма вызывает и действует на другую ... Например, это я ответил за другую. Вы могли бы сделать аналогичный процесс ... передать свою первую форму второй ... Затем покажите вторую ... Затем вы можете скрыть свою первую форму (через this.Hide ()). Затем, во второй форме, когда вы нажимаете любую кнопку, чтобы выбрать ваш выбор, и вам нужно вернуться к первой форме, вы можете использовать исходную ссылку формы, переданную во вторую форму, чтобы повторно показать ее, например, в нажмите на вторую форму ...

this.PreservedForm.Show();  // re-show original form
this.Close();   // and CLOSE this second form...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...