スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
vb.net 連番のついたコントロールを一括で操作する方法

同じコントロールが複数存在していて、同じような処理をするとき、


Me.TextBox1.Text = "aaa"
Me.TextBox2.Text = "bbb"
Me.TextBox3.Text = "ccc"

とか、同じような記述を繰り返しても目的は果たされるけど・・・
コントロールが100個あったら・・・?
似たような記述を100行書くの?
もしも、その機能でバグが出たら・・・100か所修正するの?

コード量が少ないほど、バグも少なくて済むし、テストも少なくて済む。と考えてます。
今回の連番のついたコントロールを一括で操作する方法なんて、初歩の初歩だとは思うけれども、
複数行の処理を数行で書くことができるんだから、使わない手はない。

1_20140625000434949.png


  'ボタン1押下時イベント
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim i As Integer

For i = 1 To 3

CType(Me.Controls("TextBoxEx" & i), TextBoxEx).Text = i

Next

End Sub


上記の書き方では、TextBoxExとしているけど、これは、TextBoxクラスを継承したクラスのことです。
Enterキー押下で、次のコントロールにフォーカスが移るようにしたTextBoxです。

詳しくは、先日の「vb.net EnterキーでTabキーと同じ動きに。継承
(説明は、DataGridViewで行っていますが、同じことです。)

今回の、連番のついたコントロールを一括で操作する方法について、
ほかにも書き方あるかもしれないけど、とりあえず今回はこれで。また何かあれば追記します。
スポンサーサイト
vb.net DataGridViewのセルの編集モード設定 | Home | vb.net EnterキーでTabキーと同じ動きに。継承

Comment

Post comment

Secret

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。