2010-01-26 68 views
1

是否可以将文本和值添加到树节点?是否可以向树节点添加值?

例如,节点可能有文本Desktop,但值为C:\Documents and Settings\All Users\Desktop

+2

这是一个WPF中,的WinForms或Web表单的树型控件? – Oded 2010-01-26 10:40:59

+0

树视图控件。 – 2010-01-26 10:41:42

+0

好的。在WPF,Winforms或Webforms? – Oded 2010-01-26 10:44:35

回答

5

您可以使用Tag属性用于存储值:

TreeNode node = new Node(); 
node.Tag = "value"; 

好处是,你可以分配给标签,你想不只是整型或字符串值的任何对象。

然后你可以使用标签如下:

var value = node.Tag as YourObjectType; 
+0

非常感谢。我只需要使用单个字符串值。我正要写一个Dictionary ,并且经历检查框是否被选中并从Dictionary获取值的麻烦。为我节省了一点时间。 – 2010-01-26 10:46:59

+0

@詹姆斯杰弗里:出于好奇,我的回答首先发布错了什么? – Ian 2010-01-26 10:47:50

+0

@ Ian没什么花哨,窗框提供了更多的信息,但是你的信息是一样的。如果我可以勾选两个框,我会。当我刷新页面时,有2个答案。没有个人:) – 2010-01-26 10:50:54

2

TreeNode有一个Tag属性。您可以将其设置为您喜欢的任何对象,并可用作基础值,而节点的正常文本显示在树中。

E.g.

TreeNode node = new TreeNode("Desktop") { Tag = "C:\Documents and Settings\All Users\Desktop" }; 
1

我知道这是旧的文章,但以防万一有人还是想解决方案。

myTreeView.Nodes.Add("Key", "Text"); 

,您可以访问像

var key = myTreeView.SelectedNode.Name; 
var text = myTreeView.SelectedNode.Text;