Foxtable(狐表)用户栏目专家坐堂 → [求助]TabControl 的疑问


  共有8827人关注过本帖树形打印复制链接

主题:[求助]TabControl 的疑问

帅哥哟,离线,有人找我吗?
chnfo
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
[求助]TabControl 的疑问  发帖心情 Post By:2012/12/20 21:01:00 [只看该作者]

1.局域网使用
2.TabControl的各个分页夹都有table,并且分别绑定表,表是normal。

问题:
我在TabControl的A分页夹的tableA里输入了数据,然后希望在B分页夹里引用A分页夹中tableA.datatable里的“新添加”数据,但发现引用不了新添加数据;然后退出窗口,点一下“保存”按钮,再打开窗口,又可以引用A分页夹中tableA.datatable里的新添加数据

同样的,直接退出窗口,再到其它表中准备引用A分页夹中tableA.datatable里的新添加数据,也不行,但退出窗口后点一下保存又可以。

原因分析:
我觉得可能是分页夹切换的时候,数据并没有得到保存(但应当不会,输入的数据是实时保存的)
又或者是局域网应用,数据没有及时得到同步?

如果数据要同步,又该如何操作呢?——————总不能动不动就去日常工作里点同步行啊

我也在论坛上检索了“数据同步”的相关帖,也试了一些方法,还是不中。
[此贴子已经被作者于2012-12-20 21:21:48编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
布莱克朱
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:623 积分:3897 威望:0 精华:0 注册:2011/8/3 22:13:00
  发帖心情 Post By:2012/12/20 21:22:00 [只看该作者]

切换时加载一下

 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2012/12/20 21:27:00 [只看该作者]

————我想到的最简单的办法是:切换分页夹的时候,直接把本分页夹里的表的.datatable.save.

但看了TabControl的方法,只有两个SelectedIndexChanged,SelectedIndexChanging

我想应当可以在SelectedIndexChanging这个事件中,保存当前的分页夹的table.datatable.save()

我是这样想的,但帮助里关于这个事件的用法描述很少,所以不得要领。

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/20 21:38:00 [只看该作者]

 就按3楼的干吧。

 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By: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
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57584 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By: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
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/21 9:06:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
chnfo
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2012/12/21 12:53: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


 ——————Table表1本身就是SelectedIndex =0这个分页夹里显示的,我希望做到的是当离开SelectedIndex =0的时候,Tables(e.Form.Name & "_Table表1").DataTable得到保存,而不是说当切换到SelectedIndex =0的时候,表1得到保存

也就是说,我希望做到的是离开A分页夹,在A分页夹的界面上显示的表.datatable得到保存。
意即:
离开分页夹A ,表1.datatable得到保存
离开分页夹B,表2.datatable、表3.datatable得到保存
离开分页夹C,表4.datatable、表5.datatable得到保存

只有这样,才有可能使这个分页夹里的表中添加或修改的数据被其它地方引用。


我想我应当试一下反过来想

Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
If tab.SelectedIndex <>0 Then '如果切换到的不是第一个页面
    Tables(e.Form.Name & "_Table表1").DataTable.Save()   
End If


但这样做有一个明显的问题,多人同时操作的时候,本人操作的数据会“被保存”
[此贴子已经被作者于2012-12-21 13:00:09编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57584 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2012/12/21 13:06:00 [只看该作者]

哎 给一个方式而已 你自己想想  你想离开这个页面就保存  有了这个方法随便你怎么做都可以了呀.

 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  10楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57584 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2012/12/21 13:11:00 [只看该作者]

你切换时  直接datatables.Save  保存全部表

 回到顶部
总数 12 1 2 下一页