Я пытаюсь выбрать раскрывающееся меню, чтобы я мог выбрать курьерскую службу с использованием Microsoft UI Automation.
Ниже приведен код, в котором я используюВыбор выпадающего списка с помощью UI Automation не продолжает раскрываться.
public void SelectCourierService(string courierService)
{
Console.WriteLine(@"SelectCourierService(" + courierService + @")");
var expandCollapsePattern = (ExpandCollapsePattern)_courierServiceCombo.GetCurrentPattern(ExpandCollapsePatternIdentifiers.Pattern);
expandCollapsePattern.Expand();
expandCollapsePattern.Collapse();
var listItem = _courierServiceCombo.FindFirst(TreeScope.Subtree, new PropertyCondition(AutomationElement.NameProperty, courierService));
listItem = AutomationElementHelper.GetSubtree(_courierServiceCombo, courierService);
object selectionItemPattern;
if (listItem.TryGetCurrentPattern(SelectionItemPattern.Pattern, out selectionItemPattern))
{
var selectPattern = (SelectionItemPattern)selectionItemPattern;
selectPattern.Select();
}
Thread.Sleep(100);
}
Однако, когда он попадает в следующий фрагмент кода: - expandCollapsePattern.Expand();
Пользовательский интерфейс выпадающее меню расширяется вниз, но затем падает обратно смысла что я не могу выбрать элементы в раскрывающемся списке.
Мне было интересно, есть ли у кого-то такая же проблема и что они сделали, чтобы решить эту проблему.
Благодаря
Я могу missunderstand вас, но вы получили ExpandCollapsePattern. Collapse(); после вашего расширенияCollapsePattern.Expand(); - это специально ?! (если нет, удалите его и повторите попытку :)) Вы имеете в виду, что он разрушается до 1000 мс в вашей Thread.sleep(); закончиться? – Hansa
@ Ханса Я удалил expandCollapsePattern.Collapse(); это все равно не движется. Я создал скринказу, чтобы показать вам, что происходит: - http://screencast-o-matic.com/watch/cojrlCfBEF – ChrisMcLellan