/// <summary>
        /// Mouse down.
        /// </summary>
        /// <param name="obj">IUIObject.</param>
        /// <param name="type">Mouse button type.</param>
        /// <param name="clientLocation">Client coordinates from obj.</param>
        public static void MouseDown(IUIObject obj, MouseButtonType type = MouseButtonType.Left, Point?clientLocation = null)
        {
            var mouse = new MouseEmulator(obj.App);

            mouse.Move(GetTargetPos(obj, clientLocation));
            mouse.Down(type);
        }
        /// <summary>
        /// Mouse wheel.
        /// </summary>
        /// <param name="obj">IUIObject.</param>
        /// <param name="near">Whether the direction of wheel of the mouse is toward the near.</param>
        /// <param name="count">Count of wheel.</param>
        public static void MouseWheel(IUIObject obj, bool near, int count = 1)
        {
            obj.Activate();
            var mouse = new MouseEmulator(obj.App);

            mouse.Move(GetTargetPos(obj, null));
            mouse.Wheel(near, count);
        }
        /// <summary>
        /// Mouse wheel.
        /// </summary>
        /// <param name="obj">IUIObject.</param>
        /// <param name="delta">delta value.</param>
        public static void MouseWheel(IUIObject obj, int delta)
        {
            obj.Activate();
            var mouse = new MouseEmulator(obj.App);

            mouse.Move(GetTargetPos(obj, null));
            mouse.Wheel(delta);
        }