一個TreeNode類有如何更值添加到一個TreeNode類在C#
文本名稱標籤
我需要分配更多的值,以一個TreeNode類像float1,FLOAT2,... float6。
我該怎麼做?請幫助。
THX, 恰斯拉夫
一個TreeNode類有如何更值添加到一個TreeNode類在C#
文本名稱標籤
我需要分配更多的值,以一個TreeNode類像float1,FLOAT2,... float6。
我該怎麼做?請幫助。
THX, 恰斯拉夫
您可以創建一個新的類繼承了樹節點。 對於要存儲在treenode中的每個值,請爲該值創建一個屬性。 使用Treeview時,只需將TreeNode轉換爲您的自定義TreeNode類。
例子:
public class JobTreeNode : TreeNode {
private int intField1;
public int Field1 {
get {
return intField1;
}
set {
intField1 = value;
}
}
}
使用(評論後加入)
// Add the node
JobTreeNode CustomNode = new JobTreeNode();
CustomNode.Text = "Test";
CustomNode.Field1 = 10
treeView1.Nodes.add(CustomNode);
// SelectedNode
((CustomNode)(treeView1.SelectedNode)).Field1;
您可以創建一個輕量級的類來保存你的float1..6,把一個實例的標籤屬性。
或者,您可以使用Dictionary<TreeNode, FloatsClass>
或者可能使用6個單獨的Dictionary<TreeNode, float>
。
請注意,dotNet 4有一個新的Tuple<A,B,C,...>
類型,使這種情況更容易一些。
TreeNode的Tag屬性是「object」。你不能僅僅使用某種數據類來存儲你的數據嗎?
我試過了,但是當我選擇節點時,我無法在文本框中顯示值。 示例: textbox1.Text = treeView1.SelectedNode.Name.ToString(); < - works textbox2.Text = treeView1.SelectedNode.IntField or IntField1.ToString(); < - does not't work – Caslav 2010-03-22 12:18:28
你必須投下SelectedNode。 就像這樣:((CustomNode)(treeView1.SelectedNode))。Field1; – Rhapsody 2010-03-22 14:42:08
您還必須確保您有_Add_ JobTreeNode元素。 – 2010-03-22 17:47:05