2

個々のコントロールの .visible プロパティを実行するのではなく、コントロールのグループをまとめて 1 行で表示できるようにすることは可能ですか? 私はそれが何も害を及ぼさないことを知っていますが、それをきれいに保ち、.visible コントロール呼び出しでいっぱいのページで関数をまとめないようにしたいと考えています。

4

2 に答える 2

2

コントロールをList(Of Control)または配列にグループ化し、 -method または単純な-loopVisibleを使用してプロパティを設定するだけです。ForEachFor Each

例えば:

Dim toToggle = {OkButton, CancelButton, ControlPanel, SelectionComboBox}
For Each ctrl in toToggle
    ctrl.Visible = False
Next

また

Dim toToggle = {OkButton, CancelButton, ControlPanel}.ToList()
toToggle.ForEach(Sub(c) c.Visible = False)
于 2013-08-29T14:30:03.620 に答える
0

ドミニクのソリューションが好きです。別のアプローチ (これは Winform のレイアウト方法によって異なります) は、コントロールをパネルにグループ化することです。

For Each ctrl as Control in MyPanel.Controls
    c.Visible = False
Next

実際、このアプローチでは、新しいリストを作成する必要がなくなりますが、追加するコントロールを正確に選択できるので、そのほうがよいでしょう。

于 2013-08-29T14:45:05.643 に答える