以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  随机带的“目录树与数据表”例子是错误的,有正确的吗?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=26185)

--  作者:灵狐
--  发布时间:2012/11/26 18:56:00
--  随机带的“目录树与数据表”例子是错误的,有正确的吗?
CaseStudy目录下的文件:目录树与数据表.Table示例是错误的,录入子目录时,根目录会多出一行?
--  作者:lin_hailun
--  发布时间:2012/11/26 20:07:00
--  
 什么意思,我怎么没有发现错误?
--  作者:灵狐
--  发布时间:2012/11/26 21:19:00
--  
打开实例,增加根节点和子节点,你再回来看表A,发现大类增加三行,二类增加二行,三类增加一行,只有最后一行是正确的。
--  作者:lin_hailun
--  发布时间:2012/11/27 8:52:00
--  
 呃,没有你说的那种情况吧,每增加一个节点,只增加一行数据的啊。
[此贴子已经被作者于2012-11-27 8:51:40编辑过]

--  作者:灵狐
--  发布时间:2012/11/27 14:20:00
--  
怎么会没有呢,例子中增加根、子节点,每点一次按钮会来一次addnew,一个三给节点一定点三次,一定会出三行?

4、“增加根节点”按钮的Click事件代码:

Dim dr As DataRow = DataTables("表A").AddNew
dr(
"大类") = "新节点"
Dim
tr As WinForm.TreeView
Dim
nd As WinForm.TreeNode
tr = e.Form.Controls(
"TreeView1")
nd = tr.Nodes.Add(
"新节点")
tr.SelectedNode = nd
tr.
Select
()
tr.BeginEdit()

5、“增加子节点”按钮的Click事件代码:

Dim tr As WinForm.TreeView
Dim
nd As WinForm.TreeNode
tr = e.Form.Controls(
"TreeView1")
nd = tr.SelectedNode

If
nd IsNot Nothing Then
If nd.Level = 2 Then
MessageBox.Show(
"最多允许三层节点!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
Dim dr As DataRow = DataTables("表A").AddNew
If
nd.Level = 0
Then
dr(
"大类") = nd.Text
dr(
"二类") = "新节点"
ElseIf nd.Level = 1
dr(
"大类") = nd.ParentNode.Text
dr(
"二类") = nd.text
dr(
"三类") = "新节点"
End If
nd = nd.Nodes.Add(
"新节点")
tr.SelectedNode = nd
tr.
Select()
tr.BeginEdit()

End
If
End
If

 


--  作者:e-png
--  发布时间:2012/11/27 14:51:00
--  
"一个三给节点一定点三次,一定会出三行" 什么意思?
--  作者:lin_hailun
--  发布时间:2012/11/27 15:00:00
--  
 数据表对应目录树,就是一个节点,对应一行数据的。
--  作者:灵狐
--  发布时间:2012/11/27 16:53:00
--  
一个三级节点,一定会增加一次根节点,二次子节点。从代码上看会出现三次AddNew(),实际确实如此。
--  作者:灵狐
--  发布时间:2012/11/27 16:54:00
--  
增加一个三级节点,数据表A会增加三行,而不是一行三列。不知我说明白没有。
--  作者:lin_hailun
--  发布时间:2012/11/27 17:50:00
--  
以下是引用灵狐在2012-11-27 16:54:00的发言:
增加一个三级节点,数据表A会增加三行,而不是一行三列。不知我说明白没有。

我看明白了。但帮助里的没有错,你添加一个根节点,这个根节点就自动占一行的。

同样,你每添加一个节点,都会增加一行,这样才能体现数据表与目录树的关系。