Foxtable(狐表)用户栏目专家坐堂 → [求助]如何通过目录树输入数据?


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

主题:[求助]如何通过目录树输入数据?

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


加好友 发短信
等级:幼狐 帖子:194 积分:1580 威望:0 精华:0 注册:2013/12/8 22:48:00
[求助]如何通过目录树输入数据?  发帖心情 Post By:2014/5/25 4:05:00 [只看该作者]

 

Dim Filter As String
Dim dr As DataRow = e.Node.DataRow   '获取生成此节点的行

 

在主窗口的"Treeview1"控件的AfterSelectNode中设置以上代码,可以方便的获取Datarow,然后对table “A”进行筛选。

 

疑问:

想要通过该目录树输入数据,即在选择节点,获取目录树的Datarow后,向table “A”写入目录树Datarow的相关数据,比如Addnew的时候将“档案编号”写入table “A”,

该如何实现呢?

 

我在新增按钮中这么写:Dim dr As DataRow = e.Form.Controls("treeview1").Node.Datarow   ,保存代码时出错!!

请教大师们该怎么写呢?

 

不知道有没有将问题讲清楚??

[此贴子已经被作者于2014-5-25 4:05:54编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/25 9:12:00 [只看该作者]

 通过目录树修改表里面的数据?

 

 只能修改生成目录树后的表数据,新增的节点,无效。

 

 如果要实现这个功能,建议先看这个例子 http://www.foxtable.com/help/topics/2474.htm

 


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


加好友 发短信
等级:幼狐 帖子:194 积分:1580 威望:0 精华:0 注册:2013/12/8 22:48:00
  发帖心情 Post By:2014/5/25 15:01:00 [只看该作者]


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

图片点击可在新窗口打开查看此主题相关图片如下:捕获2.jpg
图片点击可在新窗口打开查看

 

红框中的编号怎么才能用绿框中的姓名代替呢?(姓名有重复,所以不能直接用在目录树中)
还有,点击“新增房屋”按钮在table中增加一行,新增行怎么自动填写上相应红圈中的档案编号和其它隐含的如ID这些关联字段呢?

其实说简单点就是关联增加最后节点的数据行?


图片点击可在新窗口打开查看此主题相关图片如下:捕获3.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/25 15:06:00 [只看该作者]

问题一:不知道你说什么,既然能获得e.datarow,那就可以直接用这一行的所有内容。

 

问题二:在表里做操作,不能体现在目录树里面,要控制,就必须用代码去做,参考 http://www.foxtable.com/help/topics/2474.htm

 


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


加好友 发短信
等级:幼狐 帖子:194 积分:1580 威望:0 精华:0 注册:2013/12/8 22:48:00
  发帖心情 Post By:2014/5/25 15:15:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:捕获4.jpg
图片点击可在新窗口打开查看
帮助文件中的例子都是如上图的。

问题一的意思是:帮助文件中的例子都是如上图的。目录树节点都是表中的“编号”,如何把这些节点显示为真实的客户姓名??


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/25 15:27:00 [只看该作者]

 需要根据实际问题编写代码,请上传例子。

 

 要么,直接根据客户姓名生成目录树;要么,就循环所有的行去修改。

 

 Dim trv As WinForm.TreeView = e.Form.controls("TreeView1")
For Each nd As WinForm.TreeNode In trv.AllNodes
    If nd.Level = 1 Then
        nd.Text = nd.DataRow("客户姓名")
    End If
Next


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


加好友 发短信
等级:幼狐 帖子:194 积分:1580 威望:0 精华:0 注册:2013/12/8 22:48:00
  发帖心情 Post By:2014/5/25 15:40:00 [只看该作者]

第一个问题已经解决,谢谢。
图片点击可在新窗口打开查看此主题相关图片如下:捕获5.jpg
图片点击可在新窗口打开查看

 

第二个问题是:点击“新增房屋”按钮,在边上的表新增行,如何做到表中的新增行把节点中的 “A006|幽幽”自动填写进来(意思就是第4节点的关联数据行增加一行)。

[此贴子已经被作者于2014-5-25 15:40:55编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/25 16:04:00 [只看该作者]

要写代码,先根据表数据查询到父节点,然后添加一个节点。

 

请上传例子。

[此贴子已经被作者于2014-5-25 16:04:12编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/25 16:17:00 [只看该作者]

 参考代码

 

Dim fnd() As object = Forms("窗口1").Controls("TreeView1").Basecontrol.nodes.Find("电脑", True)
If fnd.Length > 0 Then
    fnd(0).nodes.add("test", "test")
End If


 回到顶部