以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于加载树不显示的咨询  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=50011)

--  作者:wealthwind
--  发布时间:2014/4/27 21:56:00
--  关于加载树不显示的咨询
为什么加载数设置不成功
其中NodeMouseDoubleClick:代码如下
Dim Filter As String
If e.node.Text = "加载所有数据" Then
    Filter = ""
Else
    Dim dr As DataRow = e.Node.DataRow \'获取生成此节点的DataRow
    Select Case e.Node.Level
        Case 0
            Filter ="[分区] = \'" & dr("分区") & "\'"
        Case 1
            Filter ="[分区] = \'" & dr("分区") & "\' And [客户] = \'" & dr("客户") & "\'"
        Case 2
            Filter ="[分区] = \'" & dr("分区") & "\' And [客户] = \'" & dr("客户") & "\' And [产品型态] = \'" & dr("产品型态") & "\'"
    End Select
End If
DataTables("订单").LoadFilter = Filter
DataTables("订单").Load()

窗口AfterLoad代码:
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "SELECT DISTINCT 分区, 客户, 产品型态 From {订单}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt, "分区|客户|产品型态")
trv.Nodes.Insert("加载所有数据",0)


BeforeLoadOuterTable代码是

If e.DataTableName = "订单" Then

    e.Cancel = True \'打开项目的时候不加载此表

    e.SelectString = "Select * From {订单} Where [_Identify] Is Null" \'设置加载条件,注意如果主键不是_Identify,请改为实际的主键名称

End If


--  作者:有点甜
--  发布时间:2014/4/27 22:02:00
--  

这段,改一下

 

 

If e.DataTableName = "订单" Then

    e.Cancel = True \'打开项目的时候不加载此表

    e.SelectString = "Select * From {订单} Where [_Identify] Is Null" \'设置加载条件,注意如果主键不是_Identify,请改为实际的主键名称

End If

 

 

改成

 

 

If e.DataTableName = "订单" Then

    e.SelectString = "Select * From {订单} Where 1=2" \'设置加载条件,注意如果主键不是_Identify,请改为实际的主键名称

End If


--  作者:wealthwind
--  发布时间:2014/4/27 22:14:00
--  
窗口附件
--  作者:wealthwind
--  发布时间:2014/4/27 22:14:00
--  
窗口附件
--  作者:wealthwind
--  发布时间:2014/4/27 22:15:00
--  
窗口附件
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:加载树.zip


--  作者:wealthwind
--  发布时间:2014/4/27 22:15:00
--  
显示情况
图片点击可在新窗口打开查看此主题相关图片如下:360截图20140427215238858.jpg
图片点击可在新窗口打开查看

--  作者:wealthwind
--  发布时间:2014/4/27 22:16:00
--  
老师,换了代码不行啊,表结构都没显示了
图片点击可在新窗口打开查看此主题相关图片如下:360截图20140427221515905.jpg
图片点击可在新窗口打开查看
图片点击可在新窗口打开查看此主题相关图片如下:360截图20140427221524823.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:360截图20140427221530377.jpg
图片点击可在新窗口打开查看


--  作者:wealthwind
--  发布时间:2014/4/27 22:22:00
--  
老师看看是什么问题,也就是我达到的效果,是:加载树,能从后台加载节点,但不显示数据;;只有双击节点才加载数据;即可
--  作者:wealthwind
--  发布时间:2014/4/27 22:23:00
--  
也就是说,项目打开时,节点是从外部数据库中提取节点的,表中只有表结构,没数据明细。
--  作者:wealthwind
--  发布时间:2014/4/27 22:31:00
--  
老师,我用的是外部数据源MSSQL