以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于加载数据表的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=80646)

--  作者:我来看看
--  发布时间:2016/1/28 8:38:00
--  [求助]关于加载数据表的问题

我在主窗口中利用listview控件调用了“安全日历表”中的“安全天数”显示

 

为了每次打开项目后,都能得到最新的安全天数,AfterOpenProject事件中,设置下面的代码:

DataTables("安全日历").DataCols("起始日期").RaiseDataColChanged()

 

 

可是在打开项目后主窗口的安全天数显示还是没有自动刷新,只有打开一次“安全日历表”才能增加天数。

 

 

请问问题出在哪??如何修改?????


--  作者:大红袍
--  发布时间:2016/1/28 9:38:00
--  

 没看懂你的问题,你主窗口的安全天数用什么显示?sqlTable/sqlQuery?

 

 做例子上来看看


--  作者:我来看看
--  发布时间:2016/1/28 10:22:00
--  

我的安全日历的数据表中有起始日期和安全天数两个数据列,通过录入起始日期能够自动计算出安全天数,代码

 

Select Case e.DataCol.name
    Case "起始日期"
        If e.DataRow.IsNull("起始日期") Then
            e.DataRow("安全日历") = Nothing
        Else
            Dim tp As TimeSpan = Date.today - CDate(e.DataRow("起始日期"))
            e.DataRow("安全日历") = Math.Round(tp.TotalDays)
        End
If
End
Select

 

这个表中的安全天数只要打开显示的就是正确的,我在软件程序的主界面窗口中使用的listview控件调用了“安全日历表”中的“安全天数”这个数据来显示,可是安全天数没有自动刷新增加,而关闭主界面窗口打开一次安全日历这个数据表后,数据表中的安全天数自动增加了,再打开主界面窗口,listview控件调用的“安全天数”也正确了。

 

请问如何在系统打开主界面窗口的时候安全天数自动刷新,不用非打开一次安全日历数据表才增加。

 

我已经为了每次打开项目后,都能得到最新的安全天数,AfterOpenProject事件中,设置下面的代码:

DataTables("安全日历").DataCols("起始日期").RaiseDataColChanged()

 

 

可是还是不增加


--  作者:大红袍
--  发布时间:2016/1/28 10:28:00
--  

方法一:拷贝afterLoad事件的代码,把Listview重新生成一次

 

方法二:循环listview每一个节点,然后查找对应的表的行,然后修改text


--  作者:我来看看
--  发布时间:2016/1/28 15:43:00
--  
老师,实在不好意思,写错了,我是用Label控件来调用显示安全天数的!!
--  作者:大红袍
--  发布时间:2016/1/28 15:58:00
--  

那label的数据要调用哪里的数据显示?


--  作者:我来看看
--  发布时间:2016/1/28 15:59:00
--  

主界面窗口的Label控件调用了“安全日历表”中的“安全天数”来显示,不自动更新,必须打开一次安全日历这个数据表才能更新出来


--  作者:大红袍
--  发布时间:2016/1/28 16:09:00
--  

贴出你afterLoad事件写的代码。怎么调用的,你再调用一次不就行了?

 

 


--  作者:我来看看
--  发布时间:2016/1/28 16:10:00
--  

e.Form.Controls("Label1").Text = Tables("安全日历").Rows(0)("安全天数")


--  作者:大红袍
--  发布时间:2016/1/28 16:19:00
--  

那你可以在timertick事件写这行代码

 

e.Form.Controls("Label1").Text = Tables("安全日历").Rows(0)("安全天数")

 

http://www.foxtable.com/help/topics/1301.htm