以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]TabControl 的疑问 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=27058) |
|
-- 作者:chnfo -- 发布时间:2012/12/20 21:01:00 -- [求助]TabControl 的疑问 1.局域网使用 2.TabControl的各个分页夹都有table,并且分别绑定表,表是normal。 问题: 我在TabControl的A分页夹的tableA里输入了数据,然后希望在B分页夹里引用A分页夹中tableA.datatable里的“新添加”数据,但发现引用不了新添加数据;然后退出窗口,点一下“保存”按钮,再打开窗口,又可以引用A分页夹中tableA.datatable里的新添加数据 同样的,直接退出窗口,再到其它表中准备引用A分页夹中tableA.datatable里的新添加数据,也不行,但退出窗口后点一下保存又可以。 原因分析: 我觉得可能是分页夹切换的时候,数据并没有得到保存(但应当不会,输入的数据是实时保存的) 又或者是局域网应用,数据没有及时得到同步? 如果数据要同步,又该如何操作呢?——————总不能动不动就去日常工作里点同步行啊 我也在论坛上检索了“数据同步”的相关帖,也试了一些方法,还是不中。
[此贴子已经被作者于2012-12-20 21:21:48编辑过]
|
|
-- 作者:布莱克朱 -- 发布时间:2012/12/20 21:22:00 -- 切换时加载一下 |
|
-- 作者:chnfo -- 发布时间:2012/12/20 21:27:00 -- ————我想到的最简单的办法是:切换分页夹的时候,直接把本分页夹里的表的.datatable.save. 但看了TabControl的方法,只有两个SelectedIndexChanged,SelectedIndexChanging 我想应当可以在SelectedIndexChanging这个事件中,保存当前的分页夹的table.datatable.save() 我是这样想的,但帮助里关于这个事件的用法描述很少,所以不得要领。
|
|
-- 作者:lin_hailun -- 发布时间:2012/12/20 21:38:00 -- 就按3楼的干吧。 |
|
-- 作者:chnfo -- 发布时间:2012/12/20 21:53:00 -- 我是这么想的,但就是不知道咋个写法.把这段代码写在SelectedIndexChanging事件里,结果出错了 \'Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1") \'If tab.SelectedPage IsNot Nothing Then \' Select Case tab.SelectedPage.Name \' Case "A" \' Tables(e.Form.Name & "_Table表1").DataTable.Save() \' Case "B" \' Tables(e.Form.Name & "_Table表2").DataTable.Save() \' Tables(e.Form.Name & "_Table表3").DataTable.Save() \' Case "C" \' Tables(e.Form.Name & "_Table表4").DataTable.Save() \' Tables(e.Form.Name & "_Table表5").DataTable.Save() \' End Select \'End If |
|
-- 作者:blackzhu -- 发布时间:2012/12/21 7:25:00 -- Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1") If tab.SelectedIndex =0 Then \'如果切换到的是第一个页面 Tables(e.Form.Name & "_Table表1").DataTable.Save() End If If tab.SelectedIndex = 1 Then \'如果切换到的是第二个页面 Tables(e.Form.Name & "_Table表2").DataTable.Save() Tables(e.Form.Name & "_Table表3").DataTable.Save() End If If tab.SelectedIndex = 2 Then \'如果切换到的是第三个页面 Tables(e.Form.Name & "_Table表4").DataTable.Save() Tables(e.Form.Name & "_Table表5").DataTable.Save() End If
[此贴子已经被作者于2012-12-21 7:25:42编辑过]
|
|
-- 作者:lin_hailun -- 发布时间:2012/12/21 9:06:00 -- 可以参考下。 http://www.foxtable.com/help/topics/0876.htm |
|
-- 作者:chnfo -- 发布时间:2012/12/21 12:53:00 -- 我想你理解错我的意思了。
[此贴子已经被作者于2012-12-21 13:00:09编辑过]
|
|
-- 作者:blackzhu -- 发布时间:2012/12/21 13:06:00 -- 哎 给一个方式而已 你自己想想 你想离开这个页面就保存 有了这个方法随便你怎么做都可以了呀. |
|
-- 作者:blackzhu -- 发布时间:2012/12/21 13:11:00 -- 你切换时 直接datatables.Save 保存全部表 |