在我的winform应用程序中,有一个BrowseForFolder窗口。在记录测试方法时,我选择了C:\Folder1\MyData
。但是,这个路径可能会有所不同,我正在编写一个以driveLetter,文件夹名和文件名作为参数的方法。这些值应该是在浏览器窗口中选择的值。当我看着UIMap时,有一些树木。CodedUI如何将值传递给treeItem
例如,对于驱动器名称,其UILocalDiskCTreeItem
。搜索特性有以下几点:
ControlType: TreeItem
Name: Local Disk (C:)
Value 2 (denotes the depth)
我尝试使用
this.UIBrowseForFolderWindow.UITreeViewWindow.UIDesktopTreeItem.UIComputerTreeItem.UILocalDiskCTreeItem.SetProperty("Friendly Name", "D:")
但是名字似乎是只读属性和友好的名字也是这个树项目的名称/好记的名称属性设置为d驱动器不工作。如何将选择值传递给树项目?
好的,谢谢。我知道它与SearchProperties一起工作// if(!String.IsNullOrEmpty(folderName)) // UITestControl control1 = this.UIBrowseForFolderWindow.UITreeViewWindow.UIDesktopTreeItem.UIComputerTreeItem.UILocalDiskCTreeItem.UISTreeItem; // control1.SearchProperties.Add(WinControl.PropertyNames.Name,folderName,PropertyExpressionOperator.Contains); // Mouse.Click(control1); //}。如果你能帮助我,我还有一个问题。有关我的其他问题,请参阅下面的评论。 – Aqua267
TreeItem中的每个UIElement在SearchProperties中都有一个属性值。此值似乎有深度,例如“我的电脑”的值为1,“我的电脑”中的某个文件夹的值为2,依此类推。我正在尝试修改我的代码以动态查找文件夹名称。为了做到这一点,我试图传递值属性和名称属性作为搜索属性。但WinControl.PropertyNames.Value不存在。我可以做一些像con.SearchProperties.Add(WinControl.PropertyNames.Name,folderName [ii],PropertyExpressionOperator.Contains))。 – Aqua267
@ Aqua267很高兴帮助。如果您将其作为单独问题提出,您的新问题将得到更好的帮助。 – AdrianHHH