Foxtable(狐表)用户栏目专家坐堂 → 随机带的“目录树与数据表”例子是错误的,有正确的吗?


  共有8726人关注过本帖树形打印复制链接

主题:随机带的“目录树与数据表”例子是错误的,有正确的吗?

帅哥哟,离线,有人找我吗?
灵狐
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:93 积分:921 威望:0 精华:0 注册:2012/11/26 18:49:00
随机带的“目录树与数据表”例子是错误的,有正确的吗?  发帖心情 Post By:2012/11/26 18:56:00 [只看该作者]

CaseStudy目录下的文件:目录树与数据表.Table示例是错误的,录入子目录时,根目录会多出一行?

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/26 20:07:00 [只看该作者]

 什么意思,我怎么没有发现错误?

 回到顶部
帅哥哟,离线,有人找我吗?
灵狐
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:93 积分:921 威望:0 精华:0 注册:2012/11/26 18:49:00
  发帖心情 Post By:2012/11/26 21:19:00 [只看该作者]

打开实例,增加根节点和子节点,你再回来看表A,发现大类增加三行,二类增加二行,三类增加一行,只有最后一行是正确的。

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/27 8:52:00 [只看该作者]

 呃,没有你说的那种情况吧,每增加一个节点,只增加一行数据的啊。
[此贴子已经被作者于2012-11-27 8:51:40编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
灵狐
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:93 积分:921 威望:0 精华:0 注册:2012/11/26 18:49:00
  发帖心情 Post By: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
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1695 积分:10725 威望:0 精华:0 注册:2009/10/25 16:45:00
  发帖心情 Post By:2012/11/27 14:51:00 [只看该作者]

"一个三给节点一定点三次,一定会出三行" 什么意思?

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/27 15:00:00 [只看该作者]

 数据表对应目录树,就是一个节点,对应一行数据的。

 回到顶部
帅哥哟,离线,有人找我吗?
灵狐
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:93 积分:921 威望:0 精华:0 注册:2012/11/26 18:49:00
  发帖心情 Post By:2012/11/27 16:53:00 [只看该作者]

一个三级节点,一定会增加一次根节点,二次子节点。从代码上看会出现三次AddNew(),实际确实如此。

 回到顶部
帅哥哟,离线,有人找我吗?
灵狐
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:93 积分:921 威望:0 精华:0 注册:2012/11/26 18:49:00
  发帖心情 Post By:2012/11/27 16:54:00 [只看该作者]

增加一个三级节点,数据表A会增加三行,而不是一行三列。不知我说明白没有。

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/27 17:50:00 [只看该作者]

以下是引用灵狐在2012-11-27 16:54:00的发言:
增加一个三级节点,数据表A会增加三行,而不是一行三列。不知我说明白没有。

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

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

 回到顶部