以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- [求助]date列 问题 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=117644) |
-- 作者:81538475 -- 发布时间:2018/4/16 18:52:00 -- [求助]date列 问题 当 任务开始 列不为空时,结束时间列 等于 XMZB 的 JS列 如何写呀,这一点没有弄清楚。 麻烦帮忙看看改如何改。这几列都是date 列
Se lect Case e.DataCol.Name |
-- 作者:有点蓝 -- 发布时间:2018/4/16 20:16:00 -- Select Case e.DataCol.Name Case "任务开始" If e.DataRow.Isnull("任务开始") IsNot Nothing Then e.DataRow("结束时间") = Nothing Else Dim dr As DataRow dr = DataTables("XMZB").Find("[关联列,如任务ID之类] = \'" & DataRow("关联列,如任务ID之类") & "\'") If dr IsNot Nothing Then e.DataRow("结束时间") = dr("") End If End If End Select |
-- 作者:81538475 -- 发布时间:2018/4/17 13:15:00 -- 多谢了。。接着问一下,要是希望单元格的 e.style 也跟 被引用数据列的那个表的单元格一样,代码应该怎么写呢。。我尝试写在drawcell里面,但是不知道如何加。 |
-- 作者:有点甜 -- 发布时间:2018/4/17 14:39:00 -- 拷贝drawcell事件代码到表里面即可。或者根据逻辑编写代码。
具体请上传实例测试。 |
-- 作者:81538475 -- 发布时间:2018/4/17 16:18:00 -- 主要是如何在drawcell 中引用其他表的逻辑了呢。 主表的drawcell是这样的,直接复制行不通呀
If e.Row("已通过") = True Then e.style = Nothing ElseIf e.Col.Name = "js" Then If e.Row.IsNull("js") = False Dim d1 As Date=e.Row("js") Dim tp As TimeSpan = d1 - Date.Today If tp.TotalDays >= 0 AndAlso tp.TotalDays <= 3 Then e.Style = "到期提醒" ElseIf tp.TotalDays <0 Then e.Style = "延期提醒" Else e.Style = Nothing End If End If End If [此贴子已经被作者于2018/4/17 16:21:03编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/4/17 16:27:00 -- 你要把js等列的值也引用过去,才行。
不会做上传具体项目测试。 |