示例#1
0
 /// <summary>
 /// 删除的是整个文件夹
 /// </summary>
 /// <param name="anyNode"></param>
 private void RemoveTmpltTreeNode(XmlNodeList anyNode)
 {
     foreach (XmlNode node in anyNode)
     {
         if (node is FolderXmlElement)
         {
             RemoveTmpltTreeNode(node.ChildNodes);
             RemoveElementNode((node as FolderXmlElement).Id);
         }
         else if (node is TmpltSimpleExXmlElement)
         {
             TmpltSimpleExXmlElement tmpltElement  = node as TmpltSimpleExXmlElement;
             TmpltBaseTreeNode       tmpltBaseNode = GetElementNode(tmpltElement.Id);
             tmpltBaseNode.RemoveChildNode(tmpltBaseNode);
         }
     }
 }
示例#2
0
        private void sdsite_ElementDeleted(object sender, EventArgs <SimpleExIndexXmlElement> e)
        {
            ///先找原节点并删除
            ///比较麻烦 如果删除整个文件夹 或者该文件夹有一个模板,删了后 该节点也删除  elementNode 没有存文件夹的ID
            TmpltBaseTreeNode node = this.GetElementNode(e.Item.Id);

            if (node != null)
            {                                  //_dicNodeIndexsz中的内容 只包含,模板文件夹下的问价夹,和模板文件,及其下的页面片和PART
                if (node is FolderElementNode) //是模板下的文件夹
                {
                    RemoveTmpltTreeNode(node.Element.ChildNodes);
                }
                else//模板文件,页面片,PART
                {
                    node.RemoveChildNode(node);
                }
            }
        }