我正在学习视觉,我正在尝试这样做:
For Each folder In Dir.Subfolders
list = list + 1
C1CheckBox(list).Text = folder.Name
Next
我有很多名为 C1CheckBox1、C1CheckBox2、C1CheckBox3 等的复选框...然后我想通过文件夹名称更改每个复选框的文本(使用列表变量来引用对象)...
我怎么能这样做?
谢谢你阅读
您可以在所有复选框中循环设置其文本。有关 如何枚举复选框的示例,请参见此答案
您可以使用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)