Как я могу вызвать событие мыши в WPF / C # с определенными координатами? - PullRequest
7 голосов
/ 13 июня 2011

Я бы хотел вызвать событие мыши (щелчок, mousedown или mouseup), сделав щелчок пользователя в любом месте окна WPF и переведя его на известную разницу, например, щелкнув по x, y, вызовите событие clickпри x + 100, y + 100.

Основная проблема заключается в том, что есть монитор, который физически перемещается относительно наложенного сенсорного экрана.Вместо того, чтобы перекалибровать сенсорный экран при каждом движении, я бы хотел добавить смещение перевода к событию click.

Я посмотрел на Win32 API для mouse_event и его заменяющую функцию SendInput.Я признаю, что потерян, так как не очень знаком с API.

Конечно, это простая проблема, которую я могу решить, но я не могу найти пример кода, где бы я мог реализоватьрешение.Буду признателен за любую помощь, указатели или убедительные примеры того, как добавить это к моему коду.

Спасибо Марк

1 Ответ

8 голосов
/ 13 июня 2011

Win32 API не будет работать с WPF, эта ссылка может помочь

 // Copied the snippet of code from the link above, just to help future readers
 MouseEventArgs e = new MouseEventArgs(Mouse.PrimaryDevice, 0);
 e.RoutedEvent = Mouse.MouseEnterEvent;

 youUIElement.RaiseEvent(e);
 // Or
 InputManager.Current.ProcessInput(e);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...