以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  临时表如何关闭掉?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=104712)

--  作者:happyft
--  发布时间:2017/8/3 16:02:00
--  临时表如何关闭掉?
在窗口中的一个sqltable中,打开窗口时是用
Dim tbl As Table = e.Form.Controls("物料汇总").Table
Dim dtb As New DataTableBuilder("物料汇总")
 dtb.AddDef("选择", Gettype(Boolean))
 dtb.AddDef("物料编码", Gettype(String), 32)
tbl.DataSource = dtb.BuildDataSource()
...

但当把窗口关闭掉后,这个生成的临时表就停留在上面了,怎么才关掉或者删除掉?

图片点击可在新窗口打开查看此主题相关图片如下:临时表.jpg
图片点击可在新窗口打开查看

谢谢!


--  作者:有点甜
--  发布时间:2017/8/3 16:35:00
--  

我测试了一下,用这种方法新增表,不会主表那里生成具体的表的

 

dtb.BuildDataSource()

 

你重新打开项目测试一下。

 

如果你确实要删除某个表,你可以用 DataTables.Unload("表名")


--  作者:HappyFt
--  发布时间:2017/8/3 17:30:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:临时表.jpg
图片点击可在新窗口打开查看


打开窗口的代码:
Dim tbl As Table = e.Form.Controls("Table1").Table
Dim txt As WinForm.TextBox = e.Form.Controls("TextBox1")
Dim dr As DataRow
\'生成加载表结构
Dim dtb As New DataTableBuilder("取数目录树设置")
dtb.AddDef("列名", Gettype(String), 16)
dtb.AddDef("年", Gettype(Boolean))
dtb.AddDef("季", Gettype(Boolean))
dtb.AddDef("月", Gettype(Boolean))
dtb.AddDef("周", Gettype(Boolean))
dtb.AddDef("日", Gettype(Boolean))
dtb.AddDef("日期", Gettype(Boolean))
dtb.AddDef("降序", Gettype(Boolean))
dtb.Build()
tbl.DataSource = dtb.BuildDataSource()
tbl.AllowEdit = True
tbl.SetColVisibleWidth("列名|175|年|35|季|35|月|35|周|35|日|35|日期|35|降序|35")
tbl.ShowCheckBox = True

但为何我设置的这样的窗口关闭后这个临时表都还在?关闭窗口时用Unload("表名") 是可以卸载掉,但因为这些窗口都是使用频率比较高的窗口,
这样处理会不会影响效率呢?当然原来没管它一直放着好像也没有什么问题,只是觉得奇怪

--  作者:有点甜
--  发布时间:2017/8/3 17:41:00
--  
这句代码去掉 dtb.Build()