Foxtable(狐表)用户栏目专家坐堂 → 请问如何把窗口table控件里的表格数据,转成datatable?


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

主题:请问如何把窗口table控件里的表格数据,转成datatable?

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


加好友 发短信
等级:小狐 帖子:325 积分:2752 威望:0 精华:0 注册:2015/2/3 19:48:00
请问如何把窗口table控件里的表格数据,转成datatable?  发帖心情 Post By:2019/6/21 7:54:00 [只看该作者]

 我连接到firebird数据库,读到结果集到了一个窗口的table。怎么把这个放到datatable里?

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


加好友 发短信
等级:超级版主 帖子:109505 积分:557193 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/6/21 9:01:00 [只看该作者]

table本身就对应一个datatable,不能直接用么?
tables("窗口1_table1").datatable


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/21 10:03:00 [只看该作者]

以下是引用houseer在2019/6/21 7:54:00的发言:
 我连接到firebird数据库,读到结果集到了一个窗口的table。怎么把这个放到datatable里?

 

不能直接放到datatable的,必须通过窗口的table中转。


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


加好友 发短信
等级:小狐 帖子:325 积分:2752 威望:0 精华:0 注册:2015/2/3 19:48:00
  发帖心情 Post By:2019/6/21 10:06:00 [只看该作者]

我就是想问问,怎么中转啊?  现在窗口的的table控件里有数据吧。想把它弄成到一个datatable里

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/21 10:14:00 [只看该作者]

以下是引用houseer在2019/6/21 10:06:00的发言:
我就是想问问,怎么中转啊?  现在窗口的的table控件里有数据吧。想把它弄成到一个datatable里

 

1、为什么不能直接用table控件?直接使用它?你需要做什么要用到datatable?

 

2、你是需要把数据存放到foxtable里面永久保存起来?


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


加好友 发短信
等级:小狐 帖子:325 积分:2752 威望:0 精华:0 注册:2015/2/3 19:48:00
  发帖心情 Post By:2019/6/21 10:35:00 [只看该作者]

    我连接了firebird数据库,得到了一个临时表。然后把这个临时表赋给了一个table控件的datascurce。
这是几行语句:
Dim mda As New FirebirdSql.Data.FirebirdClient.FBDataAdapter("se\ect * from employee" , conn)
Dim dt As New System.Data.DataSet()
mda.Fill(dt, "TB")
e.form.controls("Table1").Table.DataSource = dt.Tables("TB")

    现在窗口的table显示是正常了。但是我需要用到table里的数据 和 别的datatable做连接什么的操作。 所以就想着如果这个临时表能弄成一个实体的datatable就好了。
    倒不是一定要把这些数据保存起来,最好是加载的时候读取到datatable里,程序关闭再释放,这样在程序运行中就可以引用这个datatable。
    否则的话,这些数据应该是以一个临时表的形式存在,这样我似乎没办法把它和其他表做一些连接查询什么的操作。
[此贴子已经被作者于2019/6/21 10:35:54编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/21 10:43:00 [只看该作者]

只要这个窗口不关闭,不是一直可以直接使用?如

 

Dim dt As DataTable = e.form.controls("Table1").Table.DataTable

 


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


加好友 发短信
等级:小狐 帖子:325 积分:2752 威望:0 精华:0 注册:2015/2/3 19:48:00
  发帖心情 Post By:2019/6/26 10:00:00 [只看该作者]

那样会提示:  Property 'DataSource' is WriteOnly.

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


加好友 发短信
等级:小狐 帖子:325 积分:2752 威望:0 精华:0 注册:2015/2/3 19:48:00
  发帖心情 Post By:2019/6/26 10:32:00 [只看该作者]

无论是:f.SourceTable = e.form.controls("Table2").Table.DataSource  
还是:For Each dr1 As DataRow In e.form.controls("Table2").Table.DataTable


均报上面那个错。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/26 10:39:00 [只看该作者]

那你试试

 

msgbox(e.form.controls("Table2").Table.DataTable.name)

msgbox(e.form.controls("Table2").Table.DataTable.datarows.count)


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