有一个真正困扰我的问题。我在面板控件中有 8 个复选框。该面板位于automation.vb[design] 文件中。在 Automation.vb 中,我做了一个简单的循环来遍历控件并检查选中了哪个框,并且它应该可以正常工作:
For Each chk As CheckBox In pnlSelectedDays.Controls
If chk.Checked Then
'do things
End If
Next
但是,当我需要签入另一个文件时,我有相同的结构,但控件从不具有检查状态,即使它们已被检查。在第一个文件中会很好,但在第二个文件中会出错:
For Each day As CheckBox In Automation.pnlSelectedDays.Controls
If day.Checked Then
'do some more things
End If
Next
是因为我从不同的文件调用吗?我对winforms有点新,通常做c ++,所以不确定结构是否正常。如果没有,我是否只是在automation.vb 文件中创建一个共享的公共函数,以便其他文件可以调用它?
编辑:当在自动化表单上点击保存按钮时调用第一个示例。
第二个示例是从自动化表单的 OnClose 事件中调用的。