Beispiel #1
0
        /// <summary>
        /// 将文本节点添加到指定容器的末尾。
        /// </summary>
        /// <param name="textNode">要添加的文本节点</param>
        /// <param name="container">被添加的容器</param>
        /// <returns>添加后的节点</returns>
        public static IHtmlTextNode AppendTo(this IFreeTextNode textNode, IHtmlContainer container)
        {
            if (textNode == null)
            {
                throw new ArgumentNullException("textNode");
            }

            if (container == null)
            {
                throw new ArgumentNullException("container");
            }


            return(textNode.InsertTo(container, container.Nodes().Count()));
        }
Beispiel #2
0
        /// <summary>
        /// 将文本节点插入到指定位置。
        /// </summary>
        /// <param name="textNode">要插入的文本节点</param>
        /// <param name="container">被插入的容器</param>
        /// <param name="index">插入的位置</param>
        /// <returns>插入后的节点</returns>
        public static IHtmlTextNode InsertTo(this IFreeTextNode textNode, IHtmlContainer container, int index)
        {
            if (textNode == null)
            {
                throw new ArgumentNullException("textNode");
            }

            if (container == null)
            {
                throw new ArgumentNullException("container");
            }


            lock (container.SyncRoot)
            {
                if (!container.Document.Equals(textNode.Document))
                {
                    throw new InvalidOperationException();
                }

                return((IHtmlTextNode)textNode.Into(container, index));
            }
        }