以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  请问怎么对sqlcommand生成的临时datatable列表体进行更改?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=128947)

--  作者:houseer
--  发布时间:2018/12/18 21:09:00
--  请问怎么对sqlcommand生成的临时datatable列表体进行更改?
   用sqlcommand生成个临时的datatable, dt1   然后窗体上有个 表格控件, 类型是sqlquert的。把datascorce设置成dt1
   然后我想用代码改这个 表格控件 的列标题呢?   帮助上方法我试了试,没成功,不知道问题出在哪

--  作者:有点蓝
--  发布时间:2018/12/18 21:25:00
--  
参考:http://www.foxtable.com/webhelp/scr/1275.htm
--  作者:houseer
--  发布时间:2018/12/18 21:50:00
--  
   老师我弄不出来。。 代码贴一下吧。
Dim dt1 AS DATATABLE
Dim cmd As New SQLCommand
Dim sql As String
sql = "se|ect 内码,名称 from 商品表"
cmd.C
cmd.CommandText = sql
dt1 = cmd.ExecuteReader()

dt1.DataCols("内码").Caption = "fid"
dt1.BuildHeader

这样完了之后。 因为dt1是不可见的。  我把它设置到一个table控件上。

Dim tb1 As WinForm.Table = Forms("窗口1").Controls("Table1")
tb1.Table.DataSource  = dt1

这样显示出来的 还是 内码,名称  这两列名。
[此贴子已经被作者于2018/12/18 21:51:30编辑过]

--  作者:有点蓝
--  发布时间:2018/12/18 22:01:00
--  
……
dt1 = cmd.ExecuteReader()
Dim tb1 As WinForm.Table = Forms("窗口1").Controls("Table1")
tb1.Table.DataSource  = dt1

tb1.Table.datatable.DataCols("内码").Caption = "fid"
tb1.Table.datatable.BuildHeader

--  作者:houseer
--  发布时间:2018/12/18 22:31:00
--  
   这样写好了,但是还是没理解为什么这样。。 
--  作者:有点蓝
--  发布时间:2018/12/18 22:37:00
--  
绑定到控件,表头才起作用
--  作者:houseer
--  发布时间:2018/12/18 22:41:00
--  
  噢明白了。多谢老师