问题
请问(最好附有代码示例),AutomationProperties.Name属性如何在XAML中以编程和声明性方式使用?
解释
我知道,例如Visual Studio 2010中的Coded UI Builder会将窗口名称作为SearchProperty。
由于我的窗口名称会更改,我希望有一个常量SearchProperty,供我的Coded UI测试依赖。
在下面的代码示例中,我不希望窗口标题硬编码为“Pipe 1的属性”,因为它会发生变化。
代码示例
[GeneratedCode("Coded UITest Builder", "10.0.30319.1")]
public class UIListViewPropertiesTable1 : WpfTable
{
public UIListViewPropertiesTable1(UITestControl searchLimitContainer) :
base(searchLimitContainer)
{
#region Search Criteria
this.SearchProperties[WpfTable.PropertyNames.AutomationId] = "listViewProperties";
this.WindowTitles.Add("Properties of Pipe 1");
#endregion
}
#region Properties
public WpfText NameOfComponent
{
get
{
if ((this.mNameOfComponent == null))
{
this.mNameOfComponent = new WpfText(this);
#region Search Criteria
this.mNameOfComponent.SearchProperties[WpfText.PropertyNames.Name] = "Pipe 1";
this.mNameOfComponent.WindowTitles.Add("Properties of Pipe 1");
#endregion
}
return this.mNameOfComponent;
}
}
#endregion
#region Fields
private WpfText mNameOfComponent;
#endregion
}
链接
这里有一个例子:如何:使绑定数据的WPF列表或组合框上的自动化正常工作。我无法将其适应于一个窗口。