以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 这个代码让我想了3天没写出来,请教老师帮助。谢谢! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=85548) |
-- 作者:我的电脑521 -- 发布时间:2016/5/27 21:04:00 -- 这个代码让我想了3天没写出来,请教老师帮助。谢谢! 请教老师给写个代码:退住日期的列减去入住日期的列 等于入住天数的列,退住日期和入住日期的列属性为日期类型的列,入住天数列为整数型。 |
-- 作者:674140303 -- 发布时间:2016/5/27 23:20:00 -- 这是帮助文件中的例子,应该对你的问题有帮助,在帮助文件中搜索“更多的例子“就能找到 完成日期等于起始日期加上执行天数: 我们可以在该表的DataColChanged事件中加入下面的代码: If e.DataCol.Name = "起始日期"
OrElse e.DataCol.Name = "执行天数"
Then 上面的代码多处使用了e.DataRow和e.DataCol,为了让代码看上去简洁一点,我们可以用变量来代替它们: Dim dc As
DataCol = e.DataCol 采用何种编码风格,完全看个人的偏好。 示例三 上面的例子是根据开始日期和执行天数计算完成日期,如果反过来,要根据开始日期和完成日期计算执行天数,可以将DataColChanged事件代码设置为: Select
Case e.DataCol.Name |
-- 作者:Hyphen -- 发布时间:2016/5/28 9:50:00 -- 参考:http://www.foxtable.com/help/topics/0287.htm http://www.foxtable.com/help/topics/1452.htm
Select Case e.DataCol.Name Case "退住日期","入住日期" Dim dr As DataRow = e.DataRow If dr.IsNull("退住日期") OrElse dr.IsNull("入住日期") Then dr("入住天数") = Nothing Else Dim tp As TimeSpan = dr("退住日期") - dr("入住日期") dr("入住天数") = tp.TotalDays End If End Select |