-1

ユーザーが送信ボタンをクリックしたときに、ユーザー入力を配列に挿入したいと思います。これは私が書いたものですが、うまくいかないようです。フォームは form1 と呼ばれ、独自のクラスであり、テキスト ボックスは textbox1 です。注:私はプログラミングの初心者です。

//This is my array
private string[] texts = new string[10];

        public string[] Texts
        {
            get { return texts; }
            set { texts = value; }
        }

//I then attempt to insert the value of the field into the textbox
form1 enterDetails = new form1();
for(int counter = 0; counter<Texts.Length; counter++)
{
texts[counter]=enterDetails.textbox1.Text;
}
4

1 に答える 1

0

あなたはここでいくつかのばかげた間違いをしました:

  1. Texts プロパティのセッターでは、次のように言う必要があります

    texts = value;
    

    それ以外のguestNames = value;

  2. 上記で記述したすべてのコードは既に form1 クラス内にあるため、form1 の新しいインスタンスを作成する必要はありません。そうでない場合は、form1 の同じインスタンスを取得してみてください。

  3. 必須ではありませんが、フィールドではなくプロパティを設定する必要があります。

    交換

    texts[counter] = .......
    

    Texts[counter] = ..........
    

したがって、完全なコードは次のようになります。

    public form1() //Initialize your properties in constructor.
    {
        Texts = new string[10]
    }

    private string[] texts;

    public string[] Texts
    {
        get {return texts; }
        set { texts = value; }
    }

    for(int counter = 0; counter<Texts.Length; counter++)
    {
        Texts[counter]=this.textbox1.Text;
    }
于 2014-11-23T17:02:44.797 に答える