ようこそ、複数のアクションを変数として配置するにはどうすればよいですか?
お気に入り
checkbox1.enabled = false
checkbox2.enabled = false
checkbox3.enabled = false
私は多くのオブジェクトコードでこのように書きます
それらすべてを変数に入れる方法はありますか?
編集:
私も潜水艦を使うことができます、もっと簡単です。
ようこそ、複数のアクションを変数として配置するにはどうすればよいですか?
お気に入り
checkbox1.enabled = false
checkbox2.enabled = false
checkbox3.enabled = false
私は多くのオブジェクトコードでこのように書きます
それらすべてを変数に入れる方法はありますか?
編集:
私も潜水艦を使うことができます、もっと簡単です。
これは、質問で使用したのと同じ命名法を使用する場合に機能するはずです。
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
For i As Integer = 1 To 10
Dim chk() As Control = Me.Controls.Find("CheckBox" & i.ToString(), False)
If chk(0) IsNot Nothing Then
DirectCast(chk(0), CheckBox).Checked = Not DirectCast(chk(0), CheckBox).Checked
End If
Next
End Sub
もちろん、これはチェックボックスを切り替える単なる例です。
編集:
''' <summary>
''' Returns true if all of the checkboxes are checked, false if at least one of them is unchecked.
''' </summary>
Function AllChecked() As Boolean
For i As Integer = 1 To 10
Dim chk() As Control = Me.Controls.Find("checkbox" & i.ToString(), False)
If chk(0) IsNot Nothing Then
If Not DirectCast(chk(0), CheckBox).Checked Then
Return False 'Not all of the checkboxes are checked
End If
End If
Next
Return True 'All of the found checkboxes were checked.
End Function
幸運を。
public bool EnableChecks
{
set
{
checkbox1.Enabled = checkbox2.Enabled = checkbox3.Enabled = value;
}
}
次に、EnableChecksをtrueまたはfalseに設定します。これはあなたが求めているものですか?
編集:私はゲッターとセッターがこれに使用されるべきだとは思わないので、私は個人的にこれをしません。それらを有効/無効にするメソッドを作成すると、代わりに機能しますか?
public bool EnableChecks(bool enabled)
{
checkbox1.Enabled = checkbox2.Enabled = checkbox3.Enabled = enabled;
}