我开始使用FlaUI(UI自动化框架)为WPF应用程序编写测试。现在,我想获取几个按钮的“可见性”值。
这些按钮位于WPF窗口中的相同位置。第一个是开始按钮,它将开始测量。单击后,将测量按钮替换为停止按钮。这些按钮的可见性是在xaml后面的代码中设置的,需要检查/验证。
使用FlaUI只能得到IsEnabled布尔值和OffScreen布尔值。但是,当使用“离屏”参数时,此布尔值未设置或在几秒钟内设置为正确的值,但是在测量仍在运行时再次更改。
我还尝试了其他方法,例如寻找不可见按钮的可点击点。但是那些没有用。
是否可以在不使用AutomationPeer扩展按钮类并公开ValuePattern的情况下完成此操作?我在Google上搜索了一下,但找不到一个合适的答案。希望有人可以提供帮助。
答案 0 :(得分:0)
我认为您的问题的重要部分是“已替换”一词。通常,程序绘制一组控件(在您的情况下为“开始”按钮),然后绘制另一组控件。可能在顶部隐藏第一个,或者可以通过删除它们来隐藏。
常见的控件(包括按钮)被绘制在其他包含的控件中,因此按钮控件可能根本不存在,因此应在父控件或祖先控件上进行可见性检查。
This Q&A似乎与您遇到的问题有关,它可能会提供更多的见解。