我想动态生成数量不固定的控件,请大神帮看看:Dim rb_A() As WinForm.RadioButton
Dim i As Integer = 1
Dim h As Integer = 1
Dim s As String = "s"
Do While i < =8
rb_A(i) = e.Form.CreateControl("rb_" & i , ControlTypeEnum.RadioButton)
e.Form.AddControl(rb_A(i))
h = h + e.Form.Controls("rb_" & i).height
rb_A(i).Text = i
rb_A(i).Left = 10
rb_A(i).Top = h + 1
i = i + 1
Loop
[此贴子已经被作者于2023/10/10 16:16:18编辑过]
提示这个问题
错误所在事件:窗口,窗口1,Button1,Click
详细错误信息:
Object reference not set to an instance of an object.
Dim rb_A() As WinForm.RadioButton改为
Dim rb_A(7) As WinForm.RadioButton
我根据不同的条件生成不同的控件,这样如何处理
Dim s As String = "s"
If s = "s" Then
Dim rb_A(num) As WinForm.RadioButton
Else
Dim rb_A(num) As WinForm.CheckBox
End If
改为使用集合,不要使用数组。
另外这个数组如果不会传给外部或者作为全局变量使用,完全没有必要使用数组,在循环里使用普通变量直接添加即可