以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] 这段代码为什么通不过, (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=2716) |
||||
-- 作者:程兴刚 -- 发布时间:2009/5/8 13:01:00 -- [求助] 这段代码为什么通不过, DataColChanged事件代码: If e.DataCol.Name = "上级项目名称" Then Dim dr As DataRow dr = DataTables("项目明细").Find("[工程序号] = \'" & Tables("项目信息").Current("序号") & "\' and [项目名称] = \'" & e.datarow("项目名称") & "\'","编号 Desc") if dr.IsNull("项目名称") Then e.datarow("选择标记") = false else e.datarow("选择标记") = true end if end if if dr.IsNull("项目名称") Then |
||||
-- 作者:狐哥 -- 发布时间:2009/5/8 13:15:00 -- 看好多老师在isnull()后面加个指定判断,不知是不是这样. if dr.IsNull("项目名称") = true then 还有DR如找不到是不是也要出错,是否也要加个dr isnot nothing 的判断 [此贴子已经被作者于2009-5-8 13:20:09编辑过]
|
||||
-- 作者:yangming -- 发布时间:2009/5/8 13:16:00 -- 多分支形式: If 条件1 Then代码1 ElseIf 条件2 Then 代码2 ElseIf 条件3 Then 代码3 ..... Else 代码X End If |
||||
-- 作者:八婺 -- 发布时间:2009/5/8 13:26:00 -- If e.DataCol.Name = "上级项目名称" Then Dim dr As DataRow dr = DataTables("项目明细").Find("[工程序号] = \'" & Tables("项目信息").Current("序号") & "\' and [项目名称] = \'" & e.datarow("项目名称") & "\'","编号 Desc") If dr Is Nothing Then e.datarow("选择标记") = false else e.datarow("选择标记") = true end if end if [此贴子已经被作者于2009-5-8 13:26:56编辑过]
|
||||
-- 作者:cpayinyuan -- 发布时间:2009/5/8 13:32:00 -- 少了个 if dr isnot nothing的判断,你只判断dr("项目名称")是否为空,没有考虑dr也可能为空。 If e.DataCol.Name = "上级项目名称" Then Dim dr As DataRow dr = DataTables("项目明细").Find("[工程序号] = \'" & Tables("项目信息").Current("序号") & "\' and [项目名称] = \'" & e.datarow("项目名称") & "\'","编号 Desc") if dr isnot nothing e.datarow("选择标记") = false else e.datarow("选择标记") = true end if [此贴子已经被作者于2009-5-8 13:36:35编辑过]
|
||||
-- 作者:fm962 -- 发布时间:2009/5/8 14:25:00 -- If e.DataCol.Name = "上级项目名称" Then Dim dr As DataRow dr = DataTables("项目明细").Find("[工程序号] = \'" & Tables("项目信息").Current("序号") & "\' and [项目名称] = \'" & e.datarow("项目名称") & "\'","编号 Desc") elseif dr.IsNull("项目名称") Then
e.datarow("选择标记") = false else e.datarow("选择标记") = true end if 我认为这样就行了 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/5/8 14:30:00 -- 上午8:58分,我在群里就回了的,老程居然只管提问,不看回复。 [此贴子已经被作者于2009-5-8 14:48:13编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/5/8 14:35:00 -- 可能这样合适点: If e.DataCol.Name = "上级项目名称" Then Dim dr As DataRow dr = DataTables("项目明细").Find("[工程序号] = \'" & Tables("项目信息").Current("序号") & "\' and [项目名称] = \'" & e.datarow("项目名称") & "\'") If dr isNot Nothing AndAlso dr.IsNull("项目名称") then e.datarow("选择标记") = False Else e.datarow("选择标记") = true End If end if |
||||
-- 作者:yangming -- 发布时间:2009/5/8 14:37:00 -- 还是在论坛提问好,大家都学学,呵 |
||||
-- 作者:程兴刚 -- 发布时间:2009/5/8 16:54:00 -- 谢谢,还是不能实现,
|