0

Hey Guys いくつかの Checkboxed を動的に作成したので、その値を False に設定したいと思います。私の問題は、名前が記載されていないため、それらにアクセスできないことです。

私はこのようにそれらを作成しました:

        For j = 0 To column - 1

        For i = 0 To row - 1
            MyCheckboxes(counter) = New CheckBox
            MyCheckboxes(counter).Visible = True
            MyCheckboxes(counter).Checked = True
            MyCheckboxes(counter).Text = ""
            MyCheckboxes(counter).Size = New Size(15, 14)
            MyCheckboxes(counter).Name = "Check" + counter.ToString
            Me.Controls.Add(MyCheckboxes(counter))
            MyCheckboxes(counter).Location = New Point(Xpos, Ypos)
            Xpos = Xpos + 20
            counter = counter + 1
        Next i
        Ypos = Ypos + 20
        Xpos = 160
    Next j

グローバル配列に

   Public MyCheckboxes() As System.Windows.Forms.CheckBox

ここで、Button on click イベントで値を False に設定します。

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

    Dim i As Integer = 0


    Me.Controls("Check" & i).Checked = False 'Here it says: Checked is not a Member of 'System.Windows.Forms.Control'
    CheckBox0.Checked = False ' Here it says CheckBox0 is not declared. It may be inaccessible due to its protection level.


End Sub

何が間違っているのかわからないので、3時間近く理由を探しました。助けてください乾杯

4

1 に答える 1

0

配列を介してそれらにアクセスするだけです。

MyCheckboxes(i).Checked = False
于 2012-05-05T23:26:40.500 に答える