public SetResult TrySet(string value)
        {
            if (!DoesApply())
            {
                return(SetResult.NotApplicable);
            }
            if (value.Equals(SelectValue, StringComparison.OrdinalIgnoreCase))
            {
                if (_canSelectMultiple)
                {
                    _selectionItemPattern.AddToSelection();
                }
                else
                {
                    _selectionItemPattern.Select();
                }
                return(SetResult.Success);
            }

            if (!string.IsNullOrEmpty(value))
            {
                return(SetResult.Failure);
            }
            _selectionItemPattern.RemoveFromSelection();
            return(SetResult.Success);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// SelectionItemPattern.Select method. Used for Radio Buttons, Tabs so far.
 /// </summary>
 /// <param name="element"></param>
 /// <returns></returns>
 public static IUIAutomationElement xtSelectItem(this IUIAutomationElement element)
 {
     _SelectionItemPattern = (IUIAutomationSelectionItemPattern)element.GetCurrentPattern(UIA_PatternIds.UIA_SelectionItemPatternId);
     if (!element.xtIsItemSelected())
     {
         _SelectionItemPattern.Select();
     }
     return(element);
 }
Ejemplo n.º 3
0
 public override void Invoke()
 {
     _selectPattern.Select();
 }