Пример #1
0
        /// <summary>
        /// Gets the value of the current slider control
        /// </summary>
        /// <param name="controlHandle">NativeWindowHandle to the target control</param>
        /// <returns>
        /// Value of the control
        /// </returns>
        /// <exception cref="ProdOperationException">Examine inner exception</exception>
        /// <remarks>
        /// Invalid for WPF controls
        /// </remarks>
        public static double SliderGetValue(IntPtr controlHandle)
        {
            try
            {
                AutomationElement control = CommonUIAPatternHelpers.Prologue(RangeValuePattern.Pattern, controlHandle);
                StaticEvents.RegisterEvent(RangeValuePattern.ValueProperty, control);
                double retVal = RangeValuePatternHelper.GetValue(control);

                if (retVal == -1)
                {
                    ProdSliderNative.GetValueNative(controlHandle);
                }

                LogController.ReceiveLogMessage(new LogMessage(control.Current.Name + " Value: " + retVal));
                return(retVal);
            }
            catch (InvalidOperationException err)
            {
                throw new ProdOperationException(err.Message, err);
            }
            catch (ElementNotAvailableException err)
            {
                throw new ProdOperationException(err.Message, err);
            }
            catch (ArgumentException err)
            {
                throw new ProdOperationException(err.Message, err);
            }
        }
Пример #2
0
        private static double NativeGetValue(BaseProdControl control)
        {
            if (control.UIAElement.Current.ControlType == ControlType.Spinner)
            {
                return(ProdSliderNative.GetValueNative((IntPtr)control.UIAElement.Current.NativeWindowHandle));
            }

            return(ProdSliderNative.GetValueNative((IntPtr)control.UIAElement.Current.NativeWindowHandle));
        }
Пример #3
0
        private static void NativeSetValue(BaseProdControl control, double value)
        {
            if (control.UIAElement.Current.ControlType == ControlType.Spinner)
            {
                ProdSpinnerNative.SetValueNative((IntPtr)control.UIAElement.Current.NativeWindowHandle, value);
            }

            ProdSliderNative.SetValueNative((IntPtr)control.UIAElement.Current.NativeWindowHandle, value);
        }
Пример #4
0
 private static double NativeGetSmallChange(BaseProdControl control)
 {
     return((double)ProdSliderNative.GetSmallChangeNative((IntPtr)control.UIAElement.Current.NativeWindowHandle));
 }