以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 这段代码有啥问题? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56949) |
-- 作者:jianjingmaoyi -- 发布时间:2014/9/15 21:19:00 -- 这段代码有啥问题? Dim tab As WinForm.TabControl tab = forms("我的导航").CreateControl("Tab1", ControlTypeEnum.TabControl) tab.Dock = Windows.Forms.DockStyle.Fill tab.Font = New Font("微软雅黑", 10) forms("我的导航").AddControl(tab) Dim Arys As List(Of String()) Dim Products As List(Of String) Products = DataTables("功能导航").GetValues("功能区") For Each Product As String In Products Dim pg As WinForm.TabPage pg = tab.TabPages.Add(Product , Product & " →") pg.BackColor = Color.WhiteSmoke Dim dr As DataRow= DataTables("功能导航").Find("功能区=\'" & Product & "\'") If dr IsNot Nothing Then pg.Image = GetImage(dr("分类图标")) End If Dim Customers As List(Of String) Customers = DataTables("功能导航").GetValues("功能组","功能区=\'" & Product & "\'","序号") For Each Customer As String In Customers Dim lvw As WinForm.ListView lvw = forms("我的导航").CreateControl(Customer, ControlTypeEnum.ListView) lvw.Dock = Windows.Forms.DockStyle.Fill lvw.Font = New Font("微软雅黑", 10) pg.AddControl(lvw) lvw.StopRedraw() \'暂停绘制 lvw.Groups.Clear lvw.Rows.Clear() \'清除原来的行 lvw.Images.Clear() \'清除原来的图片 lvw.View = ViewMode.LargeIcon lvw.Images.LargeSize = New Size(48, 48) \'定义大图标尺寸 Dim vg As WinForm.ListViewGroup = lvw.Groups.Add() \'增加分组 vg.Name = Customer vg.Text = "☆☆☆" & Customer & "☆☆☆" Arys = DataTables("功能导航").GetValues("模块名称|模块标题|模块图标","功能区=\'" & Product & "\'And 功能组=\'" & Customer & "\'","序号") For Each Ary As String() In Arys Dim key As String = Ary(2) lvw.Images.AddLargeImage(key, key) \'添加照片,直接用文件名作为图片键值 Dim vr As WinForm.ListViewRow = lvw.Rows.Add() \'增加一行 vr.Group = vg.Name vr.Name = Ary(0) vr.Text = Ary(1) vr.ImageKey = key Next lvw.ResumeRedraw() \'恢复绘制 Next Next 不能分组
[此贴子已经被作者于2014-9-15 21:19:28编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/9/15 21:23:00 -- 什么意思?红色代码?重复清除?
Dim lvw As WinForm.ListView lvw = forms("我的导航").CreateControl(Customer, ControlTypeEnum.ListView)
lvw.Dock = Windows.Forms.DockStyle.Fill
lvw.Font = New Font("微软雅黑", 10)
pg.AddControl(lvw)
lvw.StopRedraw() \'暂停绘制
lvw.Groups.Clear
lvw.Rows.Clear() \'清除原来的行
lvw.Images.Clear() \'清除原来的图片
lvw.View = ViewMode.LargeIcon
lvw.Images.LargeSize = New Size(48, 48) \'定义大图标尺寸
|
-- 作者:有点甜 -- 发布时间:2014/9/15 21:24:00 -- 请最好做个例子,或者截图说明什么问题 |
-- 作者:jianjingmaoyi -- 发布时间:2014/9/15 21:30:00 -- 我想在每一个页签中加入一个listniew 并且进行分组 |
-- 作者:有点甜 -- 发布时间:2014/9/15 21:32:00 -- 以下是引用jianjingmaoyi在2014-9-15 21:30:00的发言:
我想在每一个页签中加入一个listniew 并且进行分组
那你现在问题是什么?你看2楼代码,你的添加和清楚,应该放在第一个循环里面,第二个循环外面 |
-- 作者:jianjingmaoyi -- 发布时间:2014/9/15 21:36:00 -- 我第一个循环是添加页签 第二个循环是添加listniew的呀 |
-- 作者:jianjingmaoyi -- 发布时间:2014/9/15 21:39:00 -- 是我错了 甜总你是对的 |