CaptureMouse - метод
Задает захват мыши для объекта UIElement.
Сборка: System.Windows (в System.Windows.dll)
public bool CaptureMouse()
Возвращаемое значение
Тип: System..::..BooleanВозвращает значение true, если объект обладает захватом мыши; в противном случае возвращает значение false.
Как только объект захватил мышь, он получает ввод от мыши независимо от того, находится ли ее указатель в пределах этого объекта. Как правило, захват мыши происходит только при имитируемых операциях перетаскивания. Чтобы освободить захват мыши, вызовите метод ReleaseMouseCapture для объекта, который захватившего мышь.
Указатель мыши может быть захвачен после выполнения всех следующих условий:
-
Указатель мыши находится в области содержимого подключаемого модуля Silverlight.
-
Никакие другие объекты Silverlight не захватывали мышь.
-
Никакие другие объекты, не относящиеся к Silverlight, не захватывали мышь на уровне машинного кода или скриптов (это возможно, если указатель мыши вышел за пределы области Silverlight в браузере и был захвачен скриптом).
-
Левая кнопка мыши находится в нажатом состоянии.
Если одно из этих условий не выполняется, метод CaptureMouse возвращает значение false.
Если вызов начального метода CaptureMouse вернул значение true и успешно выполнил захват мыши, последующие вызовы метода CaptureMouse для того же объекта по-прежнему возвращают значение true, если условия не изменились. Метод CaptureMouse возвращает такие же результаты, если объект уже имел захват мыши. В зависимости от требований приложения может оказаться полезным задать переменную, отслеживающую наличие захвата у любого объекта или содержащую ссылку на определенный объект, имеющий захват в настоящий момент. Если используется эта методика, задавайте значение переменной при каждом вызове метода CaptureMouse и очищайте его при каждом вызове метода ReleaseMouseCapture.
Захватить мышь может только объект, производный от UIElement. Важные случаи других объектов, имеющих визуальный знак, но не захват мыши: Run (только родительский объект TextBlock имеет возможность захвата) и геометрические объекты (только родительский объект Path имеет возможность захвата).
Объект UIElement, вызвавший метод CaptureMouse, должен быть видимым для проверки нажатия в пользовательском интерфейсе. Это означает, что IsHitTestVisible не может иметь значение false. Дополнительные сведения см. в разделе Проверка нажатия и события ввода.
Список операционных систем и браузеров, поддерживаемых Silverlight, см. в разделе Поддерживаемые операционные системы и браузеры.
