以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助]关于sql table目录树的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56033)
|
-- 作者:pcxjxjhkw
-- 发布时间:2014/8/28 9:52:00
-- [求助]关于sql table目录树的问题
窗体界面设置了sql table,另加一个加载条件列表框,一目录树。
想实现:1.sql table根据加载条件分页显示;2.目录树根据加载条件生成sql table同时生成目录权。
出现的问题:根据不同的加载条件,目录树只加载当前页的内容。
不知道我是否描述清楚了
请教大家
|
-- 作者:有点甜
-- 发布时间:2014/8/28 9:54:00
--
参考
http://www.foxtable.com/help/topics/2692.htm
|
-- 作者:有点甜
-- 发布时间:2014/8/28 9:55:00
--
做个例子发上,说明哪里有问题。
|
-- 作者:pcxjxjhkw
-- 发布时间:2014/8/28 10:02:00
--
这是“加载”按钮的代码
Dim trv As WinForm.TreeView = e.Form.Controls("信访拟办目录树") Dim qsj As WinForm.DateTimePicker = e.Form.Controls("起时间加载") Dim zsj As WinForm.DateTimePicker = e.Form.Controls("止时间加载") Dim djsj As WinForm.ComboBox = e.Form.Controls("登记时间加载") Dim tj As String = "登记时间 >= #" & qsj.Value & "# And 登记时间 <= #" & zsj.Value & "# "
\'================目录树============== \'建立目录树 trv.StopRedraw \'停止绘制目录树 Dim dt As DataTable = DataTables("信访拟办_拟办表") dt.LoadFilter = "" dt.LoadFilter = tj dt.Load() trv.BuildTree(dt,"归属地|初信访登记编号|信访编号") trv.Nodes.Insert("加载全部数据",0) trv.Nodes(0).ForeColor = Color.Red For Each nd1 As WinForm.TreeNode In trv.AllNodes If nd1.Level = 0 Then nd1.MoveRight End If Next For Each nd As WinForm.TreeNode In trv.AllNodes \'遍历所有节点 If nd.Level = 0 Then \'如果是三级节点 nd.Text =nd.text & "(共" & DataTables("信访拟办_拟办表").DataRows.Count & "条数据)" nd.Ic End If If nd.Level = 1 Then \'如果是三级节点 nd.Text =nd.text & "(" & nd.Nodes.Count & "件)" nd.Ic End If If nd.Level = 2 Then \'如果是二级节点 nd.Text = "【" & nd.DataRow("姓名") & "】信访件" & "(共" & nd.Nodes.Count & "次)" nd.Ic End If If nd.Level = 3 Then \'如果是三级节点 nd.Text =nd.DataRow("信访编号") & "(" & nd.DataRow("初重信访") & ")" nd.Ic End If Next trv.ResumeRedraw \'恢复绘制目录树 trv.SelectedNode = trv.Nodes(0)
With DataTables("信访拟办_拟办表") .LoadFilter = "" \'清除加载条件 .LoadFilter = tj .LoadOrder = "拟办状态" .LoadPage = 0 \'加载第一页 .LoadTop = 10 \'每页10行 .Load() e.Form.Controls("页数").Value = 1 & "/" & .TotalPages End With
问题出在:目录树只根据表中第一页数据生成,我想实现,目录树根据指定加载条件表中所有数据生成。
|
-- 作者:有点甜
-- 发布时间:2014/8/28 10:05:00
--
这句,肯定要改
Dim dt As DataTable = DataTables("信访拟办_拟办表") dt.LoadPage = 0 \'加载第一页 dt.LoadTop = 100000 \'每页10行 dt.LoadFilter = tj dt.Load() trv.BuildTree(dt,"归属地|初信访登记编号|信访编号")
|
-- 作者:pcxjxjhkw
-- 发布时间:2014/8/28 10:07:00
--
谢谢,但是否占用资源
|
-- 作者:有点甜
-- 发布时间:2014/8/28 10:11:00
--
以下是引用pcxjxjhkw在2014-8-28 10:07:00的发言:
谢谢,但是否占用资源
不会占用资源,要生成目录树,肯定是需要把表全部加载出来的。
|
-- 作者:pcxjxjhkw
-- 发布时间:2014/8/28 10:14:00
--
好,谢谢
|