以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- 使用多层列表选择,出现错误!! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=4875)
|
-- 作者:雨中的泪
-- 发布时间:2009/11/5 9:23:00
-- 使用多层列表选择,出现错误!!
Dim tv As WinForm.TreeView tv = e.Form.Controls("TreeView1") tv.BuildDataTree("DW","","归口股室","乡镇名称","单位类型","单位名称")
If e.Node.Level = 0 Then \'如果是顶层节点 Return \'则返回 End If Dim Vals() As String = e.Node.FullPath.Split("\\") Dim Filter As String = "[归口股室] = \'" & Vals(0) & "\' And [乡镇名称] = \'" & Vals(1) & "\' And [单位类型] = \'" & Vals(2) & "\' And [单位名称] = \'" & Vals(3) & "\'" Dim dr As DataRow = DataTables("DW").Find(Filter) Dim r As Row = Tables("SYGF").Current r("归口股室") = dr("归口股室") r("乡镇名称") = dr("乡镇名称") r("单位类型1") = dr("单位类型") r("单位类型2") = dr("单位类型2") r("单位名称") = dr("单位名称") r("单位代码") = dr("单位代码") r("是否教龄津贴单位") = dr("是否教龄津贴单位") r("是否护龄津贴单位") = dr("是否护龄津贴单位") r("标准起始时间") = dr("实施绩效工资标准起始时间") r("控制时间") = dr("实施绩效工资审批控制时间") if r("标准起始时间") = "0001-01-01" r("标准起始时间") = nothing end if if r("控制时间") = "0001-01-01" r("控制时间") = nothing end if e.Form.Close() 此主题相关图片如下:未命名.jpg
|
-- 作者:雨中的泪
-- 发布时间:2009/11/5 9:27:00
--
双击二层以下节点就出现错误提示!!! 版主帮忙,看看,谢谢
|
-- 作者:狐狸爸爸
-- 发布时间:2009/11/5 9:32:00
--
Dim Vals() As String = e.Node.FullPath.Split("\\") Dim Filter As String = "[归口股室] = \'" & Vals(0) & "\' And [乡镇名称] = \'" & Vals(1) & "\' And [单位类型] = \'" & Vals(2) & "\' And [单位名称] = \'" & Vals(3) & "\'"
上面的代码,如果双击的不是4层节点,那么肯定是出错的。
用Vals.Length判断双击的是几层节点吧
|
-- 作者:雨中的泪
-- 发布时间:2009/11/5 9:41:00
--
如何改?版主谢谢
|
-- 作者:狐狸爸爸
-- 发布时间:2009/11/5 9:58:00
--
If e.Node.Level = 0 Return End If
改为:
If e.Node.Level < 3 Then Return End If
|
-- 作者:雨中的泪
-- 发布时间:2009/11/5 10:27:00
--
谢谢
|