|
『原创』C#中TreeView类操作全攻略:建立树,新增节点,删除节点,修改节点,拖动节点,与Oracle数据库交互操作(一)(26) { nextFocusNode=trv_Function.SelectedNode.Parent.Nodes[0]; } } long deleteFuncItemID=long.Parse(trv_Function.SelectedNode.Tag.ToString()); // TreeNodeCollection deleteNodes = trv_Function.SelectedNode.Nodes; IEnumerator enumNodes = deleteNodes.GetEnumerator(); //调用GetNodesValue取得要删除的节点及其子节点的节点数目 Hashtable hashNodes =GetNodesValue(enumNodes); //arrDeleteID数组保存要删除的节点及其子节点的ID; long[] arrDeleteID=new long[hashNodes.Count+1]; //arrDeleteName数组保存要删除的节点及其子节点的名称; string[] arrDeleteName=new string[hashNodes.Count+1]; //把要删除的节点的ID和名称作为数组的第一个元素 arrDeleteID[0]=deleteFuncItemID; arrDeleteName[0]=trv_Function.SelectedNode.Text; IDictionaryEnumerator enumHashNodes = hashNodes.GetEnumerator(); int index=0; //把要删除的节点的所有子节点作为数组的其他元素 while(enumHashNodes.MoveNext()) { arrDeleteID[index+1]=long.Parse(enumHashNodes.Key.ToString()); arrDeleteName[index+1]=enumHashNodes.Value.ToString(); index++; } // for(int i=0;i<arrDeleteID.Length;i++) { DeleteFuncItem(arrDeleteID[i],arrDeleteName[i]);
|