以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 窗口视图代码问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=5897) |
-- 作者:wqc360 -- 发布时间:2010/1/29 18:04:00 -- 窗口视图代码问题 我在窗口AfterLoad事件加入代码: If Vars("用户组") = "浏览员" e.Form.Controls ("产品目录录入"). Visible = False End If Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.CommandText = "SELECT DISTINCT 客户,机型,所属部分,图号 From 产品目录" dt = cmd.ExecuteReader() Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.BuildDataTree(dt, "","客户", "机型","所属部分","图号") Tables("产品目录").OpenView("车间主管") Tables("产品目录.产品工序").OpenView("车间主管") Tables("产品目录.产品工序.产品工艺").OpenView("车间主管") 怎么每次重新打开项目是,该代码报错,3个表都是动态加载数据,如删掉最后3条视图代码,能正常,如有操作过,重新打开窗口,也正常,不知问题出在哪里。谢谢 |
-- 作者:mr725 -- 发布时间:2010/1/29 18:12:00 -- 贴个错误的图片看看~ |
-- 作者:mr725 -- 发布时间:2010/1/29 18:35:00 -- 直接这样用: Tables("产品目录").OpenView("车间主管") Tables("产品工序").OpenView("车间主管") Tables("产品工艺").OpenView("车间主管") 也不行啊~ 奇怪,绑定到表,又不是副本,视图应该和原表一致才对的~ [此贴子已经被作者于2010-1-29 19:05:16编辑过]
|
-- 作者:mr725 -- 发布时间:2010/1/29 19:41:00 -- 打开项目时在Tables("产品目录") 随便加载几行数据就不会有问题了,应该是个bug吧~ 看这个问题:http://www.datasoft.com.cn/fox/dispbbs.asp?boardid=2&Id=5899 |
-- 作者:czy -- 发布时间:2010/1/29 19:43:00 -- 能不能做个示例上来研究一下。 我这里测试好象不存在这个问题。 |
-- 作者:mr725 -- 发布时间:2010/1/29 20:55:00 -- 楼主的例子在这里http://www.datasoft.com.cn/fox/dispbbs.asp?boardid=2&Id=5891 3楼, 我也被datatable的filter 和 table的filter搞晕了~ |
-- 作者:wqc360 -- 发布时间:2010/1/29 21:38:00 -- 我改成这样: If Vars("用户组") = "浏览员" e.Form.Controls ("产品目录录入"). Visible = False End If Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.CommandText = "SELECT DISTINCT 客户,机型,所属部分,图号 From 产品目录" dt = cmd.ExecuteReader() Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.BuildDataTree(dt, "","客户", "机型","所属部分","图号") if tables("产品目录").count > 0 Tables("产品目录").OpenView("车间主管") Tables("产品目录.产品工序").OpenView("车间主管") Tables("产品目录.产品工序.产品工艺").OpenView("车间主管") end if 就OK了 如不加if end if,报错图片如下,也可以用加载几行数据解决 此主题相关图片如下:未命名.bmp |