internal void RaiseFocusEvent(DomElement oldCurrentElement, DomElement newCurrentElement)
        {
            DomElementList oldParents = oldCurrentElement == null ?
                                        new DomElementList() : WriterUtils.GetParentList2(oldCurrentElement);

            if (oldCurrentElement != null)
            {
                oldParents.Insert(0, oldCurrentElement);
            }
            DomElementList newParents = newCurrentElement == null ?
                                        new DomElementList() : WriterUtils.GetParentList2(newCurrentElement);

            if (newCurrentElement != null)
            {
                newParents.Insert(0, newCurrentElement);
            }
            // 触发旧的容器元素的失去输入焦点事件
            foreach (DomElement oldParent in oldParents)
            {
                if (newParents.Contains(oldParent) == false)
                {
                    //((XTextContainerElement)oldParent).OnLostFocus(this, EventArgs.Empty);

                    DocumentEventArgs args2 = new DocumentEventArgs(
                        this.OwnerDocument,
                        oldParent,
                        DocumentEventStyles.LostFocus);
                    oldParent.HandleDocumentEvent(args2);
                }
            }
            // 触发新的容器元素的获得输入焦点事件
            foreach (DomElement newParent in newParents)
            {
                if (oldParents.Contains(newParent) == false)
                {
                    //((XTextContainerElement)newParent).OnGotFocus(this, EventArgs.Empty);

                    DocumentEventArgs args2 = new DocumentEventArgs(
                        this.OwnerDocument,
                        newParent,
                        DocumentEventStyles.GotFocus);
                    newParent.HandleDocumentEvent(args2);
                }
            }
        }