0

ようこそ、複数のアクションを変数として配置するにはどうすればよいですか?

お気に入り

checkbox1.enabled = false
checkbox2.enabled = false
checkbox3.enabled = false

私は多くのオブジェクトコードでこのように書きます

それらすべてを変数に入れる方法はありますか?

編集:

私も潜水艦を使うことができます、もっと簡単です。

4

2 に答える 2

1

これは、質問で使用したのと同じ命名法を使用する場合に機能するはずです。

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

幸運を。

于 2013-01-23T17:28:47.607 に答える
0
    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;
    }
于 2013-01-23T17:24:59.720 に答える