System.Xml.XmlDataDocument.OnNodeRemoved C# (CSharp) Méthode

OnNodeRemoved() private méthode

private OnNodeRemoved ( object sender, XmlNodeChangedEventArgs args ) : void
sender object
args XmlNodeChangedEventArgs
Résultat void
        private void OnNodeRemoved(object sender, XmlNodeChangedEventArgs args)
        {
            if (_ignoreXmlEvents)
                return;

            bool wasIgnoreDataSetEvents = _ignoreDataSetEvents;
            bool wasIgnoreXmlEvents = _ignoreXmlEvents;
            bool wasFoliationEnabled = IsFoliationEnabled;
            _ignoreDataSetEvents = true;
            _ignoreXmlEvents = true;
            IsFoliationEnabled = false;

            Debug.Assert(DataSet.EnforceConstraints == false);

            bool fEnableCascading = DataSet._fEnableCascading;
            DataSet._fEnableCascading = false;

            try
            {
                XmlNode node = args.Node;
                XmlNode oldParent = args.OldParent;
                Debug.Assert(args.NewParent == null);

                if (IsConnected(oldParent))
                {
                    // Removing from connected tree to disconnected tree
                    OnNodeRemovedFromTree(node, oldParent);
                }
                else
                {
                    // Removing from disconnected tree to disconnected tree: just sync the old region
                    OnNodeRemovedFromFragment(node, oldParent);
                }
            }
            finally
            {
                _ignoreDataSetEvents = wasIgnoreDataSetEvents;
                _ignoreXmlEvents = wasIgnoreXmlEvents;
                IsFoliationEnabled = wasFoliationEnabled;
                DataSet._fEnableCascading = fEnableCascading;
            }
        }
XmlDataDocument