0

form2 でこのメソッドを使用して、form3 に値を取得しました。

**form2.cs**

Form3 frm3 = new Form3(cbDelivery.Text, cbOderNo.Text, cbCartonCode.Text, lblGRV.Text);
frm3.Show();
this.Hide();

しかし、これを使用するたびに、「メソッド 'form3' のオーバーロードは '0' 引数を取らない」というメッセージが表示されます。

同じ値を探していることは理解していますが、必要ありません。たとえば、form4 を使用していて、form3 に戻りたい場合などです。

どうすればこれをバイパスできますか?

前もって感謝します。

4

3 に答える 3

1

コードのどこかに、引数がゼロの form3 という名前のメソッドへの呼び出しがあります (コード例ではコンストラクターですが、エラーはそうではありません)。オーバーロードは、同じ名前で引数の数が異なる複数のメソッドを作成できる機能です。そのため、コンパイラは一致を探しており、0 引数を取るこのメソッドのオーバーロードがないことを通知します。メソッド呼び出しを修正する必要があります。

于 2012-12-13T07:38:33.460 に答える
0

あなたの質問を正しく理解していれば、これがあなたの助けになると思います

C#を使用してビジュアルスタジオの3つのウィンドウフォーム間でデータを渡す

于 2012-12-13T07:28:56.443 に答える
0

クラスを定義するときに、コンストラクタ パラメータのデフォルト値を設定できます。

または、パラメーターを取らないオーバーロードされたコンストラクターを定義します。

public class form3
{
    public form3(string cbDelivery="", string cbOrderNo = "",
                 string cbCartonCode = "", string lblGRV = "")
    {

    }
}
于 2012-12-13T07:28:32.357 に答える