以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 多选加载问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=29668) |
-- 作者:lsfdf -- 发布时间:2013/3/11 14:41:00 -- 多选加载问题 改了个多选加载,加载时没问题,但取消全部节点时,加载了全部内容,数据有点多,我想不加载任何内容,该如何改呢 Dim trv As WinForm.TreeView = e.Sender Dim flt As String For Each nd As WinForm.TreeNode In e.node.Nodes \'同步子节点选中状态 nd.Checked = e.Node.Checked Next If e.node.ParentNode IsNot Nothing Then \'去掉父节点选中状态 e.node.ParentNode.Checked = False End If For Each nd As WinForm.TreeNode In trv.AllNodes If nd.Level > 0 AndAlso nd.ParentNode.Checked Then \'如果父节点选中 Continue For \'跳过此节点,处理下一结点 End If If nd.Checked Then If flt > "" Then flt = flt & " Or " \'注意用or而不是And End If Select Case e.Node.Level Case 0 flt = flt & "( 统计年度 = \'" & nd.Text & "\')" Case 1 flt = flt & "( 统计年度 = \'" & nd.ParentNode.Text & "\' And 统计月份 = \'" & nd.Text & "\')" Case 2 flt = flt & "( 统计年度 = \'" & nd.ParentNode.ParentNode.Text & "\' And 统计月份 = \'" & nd.ParentNode.Text & "\' and 通知日期 = # " & nd.Text & " #)" End Select End If Next DataTables("销售订单").LoadFilter = flt DataTables("销售订单").Load() DataTables("明细").Load() |
-- 作者:狐狸爸爸 -- 发布时间:2013/3/11 15:56:00 -- Dim trv As WinForm.TreeView = e.Sender Dim flt As String For Each nd As WinForm.TreeNode In e.node.Nodes \'同步子节点选中状态 nd.Checked = e.Node.Checked Next If e.node.ParentNode IsNot Nothing Then \'去掉父节点选中状态 e.node.ParentNode.Checked = False End If For Each nd As WinForm.TreeNode In trv.AllNodes If nd.Level > 0 AndAlso nd.ParentNode.Checked Then \'如果父节点选中 Continue For \'跳过此节点,处理下一结点 End If If nd.Checked Then If flt > "" Then flt = flt & " Or " \'注意用or而不是And End If Select Case e.Node.Level Case 0 flt = flt & "( 统计年度 = \'" & nd.Text & "\')" Case 1 flt = flt & "( 统计年度 = \'" & nd.ParentNode.Text & "\' And 统计月份 = \'" & nd.Text & "\')" Case 2 flt = flt & "( 统计年度 = \'" & nd.ParentNode.ParentNode.Text & "\' And 统计月份 = \'" & nd.ParentNode.Text & "\' and 通知日期 = # " & nd.Text & " #)" End Select End If Next If flt = "" Then flt = "[_Identify] Is Null" End If DataTables("销售订单").LoadFilter = flt DataTables("销售订单").Load() DataTables("明细").Load() |