当运行时不知道其中包含的文本时,选择编码 UI 中的选中列表框项目控件

Selecting a checked list box item control in coded UI when the text contained within will not be known at runtime

当列表框项目中包含的确切文本要到 [=24= 才知道时,是否有一种方法可以从编码 ui 中选中的列表框中 select 编辑项目]时间?也许是 select 在特定索引处编辑列表框项目的方法?..

我试过在 (x,y) 点使用单击列表框,但是只要有列表项就位,它就会抛出错误,因为它挡住了路,而且我无法尝试单击列表框项本身因为它显示的全文是随机生成的 ID,我不确定是否有另一种查找项目的方法。

另一种可能是在 运行 时将列表框项目的文本传递给 select?

这是我目前为获取控件而尝试做的事情,尽管它由于类型不匹配而抛出错误

设法让它与以下项目一起工作:

WinList uIItemList = UIMainwindowWindow.UIClbxSearchResultsWindow.UIClbxSearchResultsList;
WinCheckBox listItem = (WinCheckBox)uIItemList.Items[0];
listItem.Checked = true;

只需在填充列表框后设置其 SelectedIndex 属性。下面非常简单的示例将其设置为第 3 项(基于零的索引)

lstBox.SelectedIndex = 2;

根据您的评论,在选中的列表框中仍然可以实现相同的效果。

chkListBox.SelectedIndex = 2;
chkListBox.SetItemCheckState(2, CheckState.Checked);

希望对您有所帮助。