我正在尝试使用Windows UI Automation API根据其值选择项目。
我有一个继承自ComboBox
。
UIAutomation.Element
此外,我在这个组合框元素上有一个方法,应该可以用string
调用来选择匹配的组合框
我尝试了以下内容:
public void SetSelectedItem(string itemName, ITimeout timeout = null)
{
var comboboxItem = this.GetSelf(timeout).FindAll(TreeScope.Children, new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.ListItem));
var expandCollapsePattern = (ExpandCollapsePattern)this.GetSelf(timeout).GetCurrentPattern(ExpandCollapsePattern.Pattern);
expandCollapsePattern.Expand();
var itemToSelect = ?????
var selectItemPattern = (SelectionItemPattern)itemToSelect.GetCurrentPattern(SelectionItemPattern.Pattern);
selectItemPattern.Select();
}
但我真的不知道如何在第var itemToSelect = ?????
行检索正确的项目。
变量comboboxItem
的类型为AutomationElementCollection
但不幸的是,Linq似乎无法使用此类型...
您知道如何检索正确的项目吗?
或者我做错了什么?
提前致谢
答案 0 :(得分:1)
由于@TnTinMn的提示,我找到了答案,谢谢! : - )
GetFilterExpr