コード例 #1
0
            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));
            }
コード例 #2
0
            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));
            }