我正在使用VB.Net。 我有一个13个按钮的列表。这些按钮的名称是通过3个不同变量的组合构建的。
我需要禁用所有这些按钮。我不想遍历每个按钮来禁用它们。我想在循环中动态调用这些按钮,然后禁用它们。像这样的东西;
For Count = 1 To 13
PeriodRoomID = ("R" & ds.Tables("sqlSpecRoomRequest").Rows(i).Item(3) & Count)
PeriodRoomID.Enabled = False
PeriodRoomID.Backcolor = Color.Gray
Next
问题是,一旦创建了变量PeriodRoomID,我无法将其作为按钮来处理,因为;
我该如何解决这个问题?
答案 0 :(得分:3)
您可以尝试Controls.Find方法。
dim cntrl() as Control
For Count = 1 To 13
PeriodRoomID = ("R" & ds.Tables("sqlSpecRoomRequest").Rows(i).Item(3) & Count)
cntrl = Me.Controls.Find(PeriodRoomID,True)
cntrl(0).Enabled = False
cntrl(0).Backcolor = Color.Gray
Next