以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  动态增加控件问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=136816)

--  作者:ezilu
--  发布时间:2019/6/21 23:48:00
--  动态增加控件问题
Dim cnt As Integer
For i As Integer = 0 To rys.Length - 1
    For j As Integer = 0 To 6
        Dim chk As WinForm.Combobox = e.Form.CreateControl("Combobox" & cnt, ControlTypeEnum.Combobox)
        chk.Width = 80
        chk.Text = rys(i)
        chk.Left = 100 + j * 100
        chk.Top = i * 25 + 80
        e.Form.Controls("Panel1").AddControl(chk)
        chk.ComboList = dr("bm_pbfl")
    Next
    cnt = cnt + 1
Next

这段代码是不是有错误,按这个循环  一行生成七个Combobox控件  控件的名称都是  Combobox" & cnt   因为cnt 要到下一行的时候才会增加1,那第一行自动生成七个  Combobox0 控件,第二行七个  Combobox1 控件?....
效果就是这样:
  Combobox0 Combobox0    Combobox0     Combobox0  Combobox0   Combobox0  Combobox0  
   Combobox1   Combobox1   Combobox1   Combobox1   Combobox1   Combobox1   Combobox1
   Combobox2   Combobox2 Combobox2   Combobox2 Combobox2     Combobox2   Combobox2
   ...                  
                     
如何解决这种控件重名的问题 

[此贴子已经被作者于2019/6/22 0:06:36编辑过]

--  作者:有点蓝
--  发布时间:2019/6/22 9:19:00
--  
Dim chk As WinForm.Combobox = e.Form.CreateControl("Combobox_" & i & "_" & j, ControlTypeEnum.Combobox)