■56132 / inTopicNo.3) |
Re[2]: 複数のコントロールに配列の内容を設定したいのですが |
□投稿者/ 裕猫 (207回)-(2010/12/28(Tue) 17:42:01)
|
■No56121 (魔界の仮面弁士 さん) に返信 > 以下、掲示板に直接書いたコードゆえ、未検証: > > // --------- 案1 ---------- > foreach( TextBox txt in this.Controls.OfType<TextBox>().Where((c) => c.Name.StartsWith("textBox") ) > { > int index; > if(int.TryParse(txt.Name.Substring(7), out index) && index >= 27 && index <= 44)) > { > txt.Text = MKST.EM10OLD[index + 13].ToString(); > } > } > > // --------- 案2 ---------- > for (int index = 27; index <= 44; index++) > { > TextBox txt = (TextBox)this.Controls.Find(string.Format("textBox{0}", index), true).First(); > txt.Text = MKST.EM10OLD[index + 13].ToString(); > } > > > // --------- 案3 ---------- > for (int index = 27; index <= 44; index++) > { > TextBox txt = (TextBox)this.Controls[string.Format("textBox{0}", index)]; > txt.Text = MKST.EM10OLD[index + 13].ToString(); > } > > >>textBoxの番号をどのように指定したらよいのか調べてみたのですが、 >>いまいち解答にたどりつけません。 > http://dobon.net/vb/dotnet/control/findcontrolbyname.html 返信ありがとうございます。拝見したコードで3番が私的に理解ができましたので、3番のパターンでテストして成功いたしました。 C#はこのあたりが少々やっかいですね。教えていただいたURLは行って見ていたのですが、応用がきかないもので使えませんでした。 おはずかしいです。 ではありがとうございました。またよろしくお願いいたします。
|
|