我正在评估 UI 自动化以进行 UI 测试,因为我有一个定义了以下按钮的 WPF 应用程序:
<Button Style="{DynamicResource ButtonStyle}" x:Name="MyBtn"/>
当我需要在视觉上禁用该按钮时,我只需更改样式,以便用户知道该按钮已禁用(颜色已更改),但该按钮仍然在内部启用,因此我仍然可以启动 OnClick 事件以便在何时显示消息用户单击“禁用”按钮。
现在的问题是我不知道如何从 UI 自动化中检查其当前应用的样式,即按钮是否被禁用或启用。你知道我该怎么做吗?
在正常情况下,我应该这样做:
Automation.Condition cEBtn = new PropertyCondition(AutomationElement.AutomationIdProperty, "MyBtn");
AutomationElement mybtnElement = appRegraceElement.FindFirst(TreeScope.Children, cEBtn);
bool disMyBtn = (bool)mybtnElement .GetCurrentPropertyValue(AutomationElement.IsEnabledProperty);
但在我的情况下,按钮始终处于启用状态,因此我需要检查应用于按钮的样式。
非常感谢你。
最好的祝福