3

と の 2 つのフォームを設計Form1Form2ました。Form1が主な形です。にボタンがあり、ボタンForm1をクリックするForm2と飛び出します。で何かしたいForm2

// click button in Form1.
private void button1_Click(object sender, EventArgs e)
    {
        Form form2= new Form();
        form2.ShowDialog();
    }

しかしForm2、既存のフォームではなく、新しいフォームです。

違います。

どのように?ありがとう。

4

5 に答える 5

6

プロジェクトにある Form2 ではなく、 Form クラスのインスタンスを作成しています。前に作成した Form2 のインスタンスを作成し、その中で ShowDialog を呼び出します。

program.cs に Application.Run(new Form1()); のようなものがあることに気付いたかもしれません。ここでは、Form1 のインスタンスを作成し、Run メソッドに渡します。

Form2 のインスタンスを作成し、ShowDialog() メソッドを呼び出して表示することで、このようにします。

Form2 form2= new Form2();
form2.ShowDialog();
于 2012-05-04T12:41:18.647 に答える
0

で空白のフォームを作成します

Form Form2= new Form();

使用する必要があります

Form2 form2= new Form2();

完全なコード:

private void button1_Click(object sender, EventArgs e)
    {
        Form2 form2= new Form2();
        form2.ShowDialog();
    }
于 2012-05-04T12:43:16.037 に答える
0
 private void button1_Click(object sender, EventArgs e)
        {
            InputForm form1 = new InputForm();
            form1.Show();
        }

ここで InputForm は、開きたいフォームを意味します。

于 2013-05-09T15:15:35.727 に答える
0

宣言する

Form2 form2= new Form2();

クラスメンバーのようにして、次のように使用します。

private void button1_Click(object sender, EventArgs e)
{

        form2.ShowDialog(); //blocking call 

       //or form2.Show() //non blocking call
}

編集

正しいコメントに基づいてClose()、関数を実行する代わりにこれを機能させるには、 makeDispose()を使用する必要があり、form2.Hide()単純に見えません

于 2012-05-04T12:40:23.540 に答える