'第一部分 自定义一个页面集合
Dim tab1 As WinForm.TabControl '自定义一个页面集合
tab1 = e.Form.CreateControl("tab1", ControlTypeEnum.TabControl)
tab1.width = 650 '调整版面大小的尺寸(宽度)
tab1.height = 500 '调整版面大小的尺寸(高度)
tab1.Left = 10 '控件位置
tab1.Top = 100
e.Form.AddControl(tab1) '将控件加入窗口
e.Form.Controls("tab1").basecontrol.ItemSize = New Size(45, 23) '自定义尺寸
tab1.Multiline = True '是否显示多行页签
'第二部分,自定义一个面板
Dim x As Integer
Dim str As String
Dim pan As WinForm.Panel '自定义一个面板
For x = 65 To 90
str = chr(x)
tab1.TabPages.Add(str, str) '新增页面,页面名称和标题均为str
pan = e.Form.CreateControl("pan" & chr(x), ControlTypeEnum.panel)
pan.width = 635 '调整面板的尺寸(宽度)
pan.height = 480 '调整面板的尺寸(高度)
pan.left = 10
pan.Top = 10
e.Form.Controls("tab1").basecontrol.tabpages(str).addcontrol(pan)
Next
Dim cmddt As New SQLCommand
'cmddt.ConnectionName = _Connection1
cmddt.CommandText = "sele!ct * fro!m {分类表} "
Dim dt As DataTable = cmddt.ExecuteReader
Dim btn As WinForm.button '自定义按钮
Dim i As Integer = 0
For x = 65 To 90
i = 0
For Each dr As DataRow In dt.DataRows
' If left(GetPY(dr("产品名称"), True), 1) = chr(x) Then '原先以拼音格式作为页签。
If dr("产品分类") = chr(x) Then '现以指定内容为页签,比如产品分类列有经典类、现代类、简约类,外加一个全部
'Dim Value As String = "全部|经典类|现代类|简约类" '页签标题
btn = e.Form.CreateControl("btn" & dr("产品名称"), ControlTypeEnum.button)
btn.width = 90 '自定义按钮尺寸(宽度)75
btn.height = 52 '自定义按钮尺寸(高度),原32
btn.Text = dr("产品名称")
btn.Left = 20 + (i Mod 5) * 125 '125为与左右按钮的横向间距
btn.Top = 20 + (i \ 5) * 100 '50为与上下按钮的纵向间距
btn.basecontrol.tag = 0
' e.Form.Controls("pan" & left(GetPY(dr("产品名称"), True), 1)).AddControl(btn)'原先的
e.Form.Controls("pan" & dr("产品分类")).AddControl(btn) '现在的
i = i + 1
End If
Next
Next
'老师, 这是动态控件代码, 以拼音格式作为页签, 由于我的控件类别较少, 很多页面都是空的, 希望以指定内容为页签,比如产品分类列有经典类、现代类、简约类,外加一个全部
"全部|经典类|现代类|简约类" '页签标题,请教老师怎么进行完善代码?
另外For x = 65 To 90代表什么意思,为什么要这么设定
[此贴子已经被作者于2024/7/20 8:27:56编辑过]