internal override UiaCore.IRawElementProviderFragment?FragmentNavigate(UiaCore.NavigateDirection direction) { AccessibleObject _parentInternal = OwningGroup?.AccessibilityObject ?? _owningListView.AccessibilityObject; switch (direction) { case UiaCore.NavigateDirection.Parent: return(_parentInternal); case UiaCore.NavigateDirection.NextSibling: int childIndex = _parentInternal.GetChildIndex(this); return(childIndex == -1 ? null : _parentInternal.GetChild(childIndex + 1)); case UiaCore.NavigateDirection.PreviousSibling: return(_parentInternal.GetChild(_parentInternal.GetChildIndex(this) - 1)); case UiaCore.NavigateDirection.FirstChild: if (_owningItem.SubItems.Count > 0) { return(GetChild(0)); } break; case UiaCore.NavigateDirection.LastChild: return(GetChildInternal(LastChildIndex)); } return(base.FragmentNavigate(direction)); }
internal override UiaCore.IRawElementProviderFragment?FragmentNavigate(UiaCore.NavigateDirection direction) { AccessibleObject _parentInternal = _owningListView.AccessibilityObject; switch (direction) { case UiaCore.NavigateDirection.Parent: return(_parentInternal); case UiaCore.NavigateDirection.NextSibling: int childIndex = _parentInternal.GetChildIndex(this); return(childIndex == -1 ? null : _parentInternal.GetChild(childIndex + 1)); case UiaCore.NavigateDirection.PreviousSibling: return(_parentInternal.GetChild(_parentInternal.GetChildIndex(this) - 1)); } return(base.FragmentNavigate(direction)); }