В WPF есть способ определить, захватывает ли мышь другой элемент управления? - PullRequest
1 голос
/ 10 ноября 2011

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

Возможно ли это?

1 Ответ

2 голосов
/ 10 ноября 2011

Используйте вложенное событие Mouse.GotMouseCapture .

public partial class MainWindow : Window {
    public MainWindow() {
        InitializeComponent();
    }
    static MainWindow() {
        EventManager.RegisterClassHandler(typeof(UIElement), Mouse.GotMouseCaptureEvent, new MouseEventHandler(MainWindow_GotMouseCapture));
    }
    static void MainWindow_GotMouseCapture(object sender, MouseEventArgs e) {
        // e.OriginalSource is a captured element
    }
}

Обратите внимание, что захваченный элемент доступен через статическое свойство Mouse.Captured .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...