コード例 #1
0
ファイル: InlineCollection.cs プロジェクト: dox0/DotNet471RS3
        // Worker for OnAdd and Add(UIElement).
        // If returnIndex == true, uses the more costly IList.Add
        // to calculate and return the index of the newly inserted
        // Run, otherwise returns -1.
        private int AddUIElement(UIElement uiElement, bool returnIndex)
        {
            if (uiElement == null)
            {
                throw new ArgumentNullException("uiElement");
            }

            InlineUIContainer implicitInlineUIContainer = Run.CreateImplicitInlineUIContainer(this.Parent);
            int index;

            if (returnIndex)
            {
                index = base.OnAdd(implicitInlineUIContainer);
            }
            else
            {
                this.Add(implicitInlineUIContainer);
                index = -1;
            }

            implicitInlineUIContainer.Child = uiElement;

            return(index);
        }