我正在使用VS 2005(.NET 2.0)C#在Winform上使用XML解析到TreeView的功能。複選框檢查子節點的狀態
我打算啓用treeview列表的複選框。其實,我已經啓用了它們。我發現這個代碼here,同時尋找可能有所幫助的TreeView和TreeNode的一些屬性。我找到了TreeNode.Checked屬性和TreeView.CheckBoxes屬性。
public void HighlightCheckedNodes()
{
int countIndex = 0;
string selectedNode = "Selected customer nodes are : ";
foreach (TreeNode myNode in myTreeView.Nodes[0].Nodes)
{
// Check whether the tree node is checked.
if(myNode.Checked)
{
// Set the node's backColor.
myNode.BackColor = Color.Yellow;
selectedNode += myNode.Text+" ";
countIndex++;
}
else
myNode.BackColor = Color.White;
}
if(countIndex > 0)
MessageBox.Show(selectedNode);
else
MessageBox.Show("No nodes are selected");
}
所以我在我的測試項目上試過,它只在父節點上工作,而不在子節點上。我想要做的和發生的事情是,我還必須確定孩子節點的選中狀態。我正在研究需要選擇單個到多個子節點並在檢查後執行一次外部程序的項目。這是可能的,與孩子節點?或者還有其他的選擇。
讓我知道,如果我什麼都不清楚。先謝謝你。
用'的foreach(樹節點MYNODE在myTreeView.Nodes [0] .Nodes)'只取頂層節點。如果您需要下一個級別,請在每次迭代中也使用myNode.Nodes – ASh 2015-03-02 07:23:00
這對節點級別是否有限制? – Kurisuchin 2015-03-02 08:25:51