System.Xml.XmlNamedNodeMap.AddNode C# (CSharp) Method

AddNode() private method

private AddNode ( XmlNode node ) : XmlNode
node XmlNode
return XmlNode
        internal virtual XmlNode AddNode( XmlNode node ) {
            XmlNode oldParent;
            if ( node.NodeType == XmlNodeType.Attribute )
                oldParent = ((XmlAttribute)node).OwnerElement;
            else
                oldParent = node.ParentNode;
            string nodeValue = node.Value;
            XmlNodeChangedEventArgs args = parent.GetEventArgs( node, oldParent, parent, nodeValue, nodeValue, XmlNodeChangedAction.Insert );

            if (args != null)
                parent.BeforeEvent( args );

            Nodes.Add( node );
            node.SetParent( parent );

            if (args != null)
                parent.AfterEvent( args );

            return node;
        }