// Token: 0x060025E5 RID: 9701 RVA: 0x000B5780 File Offset: 0x000B3980
        protected override List <AutomationPeer> GetChildrenCore()
        {
            AutomationPeer wrapperPeer = this.GetWrapperPeer();

            if (wrapperPeer != null)
            {
                wrapperPeer.ForceEnsureChildren();
                return(wrapperPeer.GetChildren());
            }
            return(this.GetCellItemPeers());
        }
        // Token: 0x06002587 RID: 9607 RVA: 0x000B47A0 File Offset: 0x000B29A0
        protected override List <AutomationPeer> GetChildrenCore()
        {
            AutomationPeer owningCellPeer = this.OwningCellPeer;

            if (owningCellPeer != null)
            {
                owningCellPeer.ForceEnsureChildren();
                return(owningCellPeer.GetChildren());
            }
            return(null);
        }
        ///
        protected override List <AutomationPeer> GetChildrenCore()
        {
            AutomationPeer wrapperPeer = GetWrapperPeer();

            if (wrapperPeer != null)
            {
                // The children needs to be updated before GetChildren call as ChildrenValid flag would already be true and GetChildren call won't update the children list.
                wrapperPeer.ForceEnsureChildren();
                List <AutomationPeer> children = wrapperPeer.GetChildren();
                return(children);
            }

            return(null);
        }
Ejemplo n.º 4
0
        ///
        protected override List <AutomationPeer> GetChildrenCore()
        {
            AutomationPeer wrapperPeer = GetWrapperPeer();

            if (wrapperPeer != null)
            {
                // We need to update children manually since wrapperPeer is not in the Automation Tree
                // When containers are recycled the visual (DataGridRow) will point to a new item. ForceEnsureChildren will just refresh children of this peer,
                // unlike UpdateSubtree which would raise property change events and recursively updates entire subtree.
                // WrapperPeer's children are the peers for DataGridRowHeader, DataGridCells and DataGridRowDetails.
                wrapperPeer.ForceEnsureChildren();
                List <AutomationPeer> children = wrapperPeer.GetChildren();
                return(children);
            }

            return(GetCellItemPeers());
        }
        ///
        protected override List <AutomationPeer> GetChildrenCore()
        {
            AutomationPeer wrapperPeer = OwningCellPeer;

            if (wrapperPeer != null)
            {
                // We need to manually update children here since the wrapperPeer is not in the automation tree.
                // When containers are recycled the visual (DataGridCell) will point to a new item. ForceEnsureChildren will just refresh children of this peer,
                // unlike UpdateSubtree which would raise property change events and recursively updates entire subtree.
                // WrapperPeer's children need to be updated when switching from Editing mode to Non-editing mode and back.
                wrapperPeer.ForceEnsureChildren();
                List <AutomationPeer> children = wrapperPeer.GetChildren();
                return(children);
            }

            return(null);
        }