0

我正在学习视觉,我正在尝试这样做:

    For Each folder In Dir.Subfolders
        list = list + 1
        C1CheckBox(list).Text = folder.Name
    Next

我有很多名为 C1CheckBox1、C1CheckBox2、C1CheckBox3 等的复选框...然后我想通过文件夹名称更改每个复选框的文本(使用列表变量来引用对象)...

我怎么能这样做?

谢谢你阅读

4

2 回答 2

1

您可以在所有复选框中循环设置其文本。有关 如何枚举复选框的示例,请参见此答案

于 2012-11-14T18:26:28.413 回答
1

您可以使用Controls.Find按名称查找控件:

For Each folder In Dir.Subfolders
    list = list + 1
    Dim cb As CheckBox = Me.Controls.Find("C1CheckBox" & list, True)(0)
    cb.Text = folder.Name
Next

这将搜索整个表单,包括其子容器。如果您知道所有复选框都在 panel1 中,则可以更具体:

Dim cb As CheckBox = Me.Panel1.Controls.Find("C1CheckBox" & list, False)(0)
于 2012-11-14T23:04:37.997 回答