• ベストアンサー

VB.NETで複数のTextBoxのTextプロパティを設定する方法

TextBoxが10個,20個とある場合に同じ値(もしくは異なる値)をコードでTextプロパティに設定する際の簡単な設定方法があれば教えて下さい。 それとも、一つずつ設定していくしかないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.1

動的にコントロールオブジェクトの配列を作成するのか最も良い方法でしょう。 フォーム(Form1)にボタンコントロールの配列を作成し、ボタンをクリックするとそのボタンのTextを表示する例を以下に示します。ここではフォームのLoadイベントハンドラでボタンコントロールの配列を作成していますが、コンストラクタの適当な位置で行っても結構です。 [VB.NET] 'ボタンコントロール配列のフィールドを作成 Private testButtons() As System.Windows.Forms.Button 'フォームのLoadイベントハンドラ Private Sub Form1_Load(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles MyBase.Load 'ボタンコントロール配列の作成(ここでは5つ作成) Me.testButtons = New System.Windows.Forms.Button(4) {} 'ボタンコントロールのインスタンス作成し、プロパティを設定する Me.SuspendLayout() Dim i As Integer For i = 0 To Me.testButtons.Length - 1 'インスタンス作成 Me.testButtons(i) = New System.Windows.Forms.Button 'プロパティ設定 Me.testButtons(i).Name = i.ToString() Me.testButtons(i).Text = i.ToString() Me.testButtons(i).Size = New Size(30, 30) Me.testButtons(i).Location = New Point(i * 30, 10) 'イベントハンドラに関連付け AddHandler Me.testButtons(i).Click, _ AddressOf Me.testButtons_Click Next i 'フォームにコントロールを追加 Me.Controls.AddRange(Me.testButtons) Me.ResumeLayout(False) End Sub 'Buttonのクリックイベントハンドラ Private Sub testButtons_Click(ByVal sender As Object, _ ByVal e As EventArgs) 'クリックされたボタンのNameを表示する MessageBox.Show(CType(sender, System.Windows.Forms.Button).Name) End Sub

参考URL:
http://dobon.net/vb/dotnet/control/buttonarray.html
XkakizakiX
質問者

お礼

なるほど。 このサイトは知っていましたが、 なにぶん未熟者で気がつきませんでした。 早速明日にでも試してみます。 ありがとうございます。

すると、全ての回答が全文表示されます。

関連するQ&A