以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 随机带的“目录树与数据表”例子是错误的,有正确的吗? (http://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").AddNewdr("大类") = "新节点" 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.TreeViewDim 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会增加三行,而不是一行三列。不知我说明白没有。 我看明白了。但帮助里的没有错,你添加一个根节点,这个根节点就自动占一行的。 同样,你每添加一个节点,都会增加一行,这样才能体现数据表与目录树的关系。 |