我获得了窗口和微调器对象:
var OrderWindow = AutomationElement.RootElement.FindFirst(TreeScope.Children, new PropertyCondition(AutomationElement.NameProperty, "*NAME*"));
var numberOfXX = OrderWindow.FindFirst(TreeScope.Descendants, new PropertyCondition(AutomationElement.AutomationIdProperty, "*NAME*"));
然后我访问微调器RangeValuePatterm:
RangeValuePattern value = numberOfXX.GetCurrentPattern(RangeValuePattern.Pattern) as RangeValuePattern;
我应该可以使用简单的:
value.SetValue(5);
要修改其值,但它无法正常工作。我得到一个类型为' System.ArgumentOutOfRangeException'的例外。 - 值大于最大值。 (这是真的,但我不知道如何改变最大允许值......)。
此外,我不知道如何获得其当前值,因为简单:
value.Current.Value
无论输入什么值,始终返回0。我可以简单地发送键来设置微调器的值,而不是通过UIAutomation访问它,但我不知道如何读取微调器的实际值→因此如果它是正确的则无法检查它。 / p>