Beispiel #1
0
        internal bool RemoveElement(GraphElement element)
        {
            Ensure.Argument.NotNull(element, nameof(element));

            if (element.Owner != this)
            {
                return(false);
            }

            ElementRemoving?.Invoke(this, element);
            OnElementRemoving(element);

            element._OnRemovingFromGraph(this);
            bool removed = _elements.Remove(element);

            Debug.Assert(removed);

            return(true);
        }
Beispiel #2
0
 /// <summary>
 /// Fires the ElementRemoving event.
 /// </summary>
 /// <param name="element">The OpenXmlElement element to remove.</param>
 /// <param name="parent">The parent element.</param>
 internal void ElementRemovingEvent(OpenXmlElement element, OpenXmlElement parent)
 {
     ElementRemoving?.Invoke(this, new ElementEventArgs(element, parent));
 }