有没有办法TreeView
暂停Objects
而不是简单的string
?与ListBox
的功能类似?
或者是否有一个控件明显类似于能够持有TreeView
的{{1}}?
答案 0 :(得分:3)
如果需要在TreeNode中保存对象,可以使用Tag属性。
TreeNode node;
node.Tag = myObject;
这将保留一个您可以随时检索的对象。
答案 1 :(得分:1)
您可以创建TreeNode
,将其文本设置为您想要的任意内容,将对象分配给Tag
属性并将其添加到TreeView
答案 2 :(得分:1)
您还可以使用属性来创建TreeNode的子类来保存您的对象。这是一个通用版本:
public class MyTreeNode<T>:TreeNode {
private T data;
public T Data {
get {
return data;
}
set {
data = value;
Text = data.ToString();
}
}
}
在这种情况下,我还在设置数据值时设置TreeNode的文本,但是如果要更改存储对象的状态并希望TreeNode的Text反映出来,则需要更多代码。