Foxtable(狐表)用户栏目专家坐堂 → 使用多层列表选择,出现错误!!


  共有13865人关注过本帖树形打印复制链接

主题:使用多层列表选择,出现错误!!

帅哥哟,离线,有人找我吗?
雨中的泪
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
使用多层列表选择,出现错误!!  发帖心情 Post By: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
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
雨中的泪
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2009/11/5 9:27:00 [只看该作者]

双击二层以下节点就出现错误提示!!!
版主帮忙,看看,谢谢

 回到顶部
帅哥,在线噢!
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By: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判断双击的是几层节点吧

 回到顶部
帅哥哟,离线,有人找我吗?
雨中的泪
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2009/11/5 9:41:00 [只看该作者]

如何改?版主谢谢

 回到顶部
帅哥,在线噢!
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/11/5 9:58:00 [只看该作者]

If e.Node.Level = 0 
    Return
End If

改为:

If e.Node.Level < 3 Then 
    Return
End If 

 回到顶部
帅哥哟,离线,有人找我吗?
雨中的泪
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2009/11/5 10:27:00 [只看该作者]

谢谢

 回到顶部