Подтвердить что ты не робот

Как открыть вторую форму?

У меня есть Form1 и Form2 в моем проекте. Form2 - это просто форма с настройками для Form1. Что такое команда, чтобы открыть Form2 из Form1, а также команду для ее закрытия?

4b9b3361

Ответ 1

Вам нужно обработать событие в Form1, которое возникает в результате взаимодействия с пользователем. Например, если у вас есть кнопка "Настройки", которую пользователь нажимает, чтобы отобразить форму настроек (Form2), вы должны обработать событие Click для этой кнопки:

private void settingsButton_Click(Object sender, EventArgs e)
{
    // Create a new instance of the Form2 class
    Form2 settingsForm = new Form2();

    // Show the settings form
    settingsForm.Show();
}

В дополнение к методу Show вы также можете использовать ShowDialog. Разница в том, что последний показывает форму как модальный диалог, что означает, что пользователь не может взаимодействовать с другими формами в вашем приложении, пока они не закрывают модальную форму. Это то же самое, что и окно сообщения. Метод ShowDialog также возвращает значение, указывающее, как форма была закрыта.


Когда пользователь закрывает форму настроек (например, нажав "X" в строке заголовка), Windows автоматически позаботится о ее закрытии.

Если вы хотите закрыть его самостоятельно, прежде чем пользователь попросит его закрыть, вы можете вызвать форму Close method:

this.Close();

Ответ 2

//To open the form

Form2 form2 = new Form2();

form2.Show();
// And to close
form2.Close();

Надеюсь, что это поможет

Ответ 3

Если вы хотите открыть Form2 modally (это означает, что вы не можете нажать Form1, пока Form2 открыт), вы можете сделать это:

using (Form2 f2 = new Form2()) 
{
    f2.ShowDialog(this);
}

Если вы хотите открыть Form2 немодуально (это означает, что вы все равно можете нажать Form1, пока Form2 открыт), вы можете создать ссылку на уровне формы для Form2 следующим образом:

private Form2 _f2;

public void openForm2()
{
    _f2 = new Form2();
    _f2.Show(this); // the "this" is important, as this will keep Form2 open above 
                    // Form1.
}

public void closeForm2()
{
    _f2.Close();
    _f2.Dispose();
}

Ответ 4

Я предполагаю, что вы говорите о формах окон:

Чтобы отобразить форму, используйте метод Show():

Form form2 = new Form();
form2.Show();

чтобы закрыть форму, используйте Close():

form2.Close();

Ответ 5

В одной строке это будет:

(new Form2()).Show();

Надеюсь, что это поможет.

Ответ 6

В любом событии клика (или другом):

Form2 frm2 = new Form2();
frm2.Show();

Ответ 7

Соответственно Form.Show() (или Form.ShowDialog(), если вы хотите, чтобы вторая форма была модальной), и Form.Hide() (или Form.Close(), в зависимости от того, что вы подразумеваете под close it).

Ответ 8

Если вам нужно показать Form2 как модальное диалоговое окно, из Form1 выполните:

var form2 = new Form2();
if (form2.ShowDialog() == DialogResult.OK) 
{
    // process results here
}

Модальный диалог сохранит фокус, пока он открыт; он установит родительские окна (Form1) "в фоновом режиме" до тех пор, пока он не будет закрыт, что является довольно распространенной практикой для окон настроек.

Ответ 9

Начните с этого:

var dlg = new Form2();
dlg.ShowDialog();

Ответ 10

Form1 OpenNewForm = new Form1();
OpenNewForm.Show();

"OpenNewForm" - это название формы. Во втором открывается форма.

Если вы хотите закрыть предыдущую форму:

this.Close();