UIElement.TryStartDirectManipulation(Pointer) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возобновляет обработку прямых манипуляций (сдвига и масштабирования, определяемых системой) в любом родительском элементе ScrollViewer , содержающем текущий элемент UIElement.
public:
static bool TryStartDirectManipulation(Pointer ^ value);
static bool TryStartDirectManipulation(Pointer const& value);
public static bool TryStartDirectManipulation(Pointer value);
function tryStartDirectManipulation(value)
Public Shared Function TryStartDirectManipulation (value As Pointer) As Boolean
Параметры
- value
- Pointer
Активная точка касания, которая инициировала манипуляцию.
Возвращаемое значение
bool
true
Значение , если родительский элемент ScrollViewer существует, и установка значения приводит к возобновлению действия сдвига или масштабирования.
false
Значение , если вызов метода не приводит к действию.
Комментарии
По умолчанию взаимодействие сенсорного ввода в элементах ScrollViewer обрабатывается обработчиком прямых операций вне потока пользовательского интерфейса. Приложение не может напрямую обрабатывать связанные события указателя после запуска обработки direct manipulation . Вы можете вызывать CancelDirectManipulations в начале ScrollViewer
взаимодействия и обрабатывать события указателя в потоке пользовательского интерфейса, что дает возможность выполнять пользовательскую обработку входных данных в ScrollViewer
.
Если вы отмените обработку прямых манипуляций в начале взаимодействия ScrollViewer , можно вызвать метод TryStartDirectManipulation
, чтобы возобновить обработку входного потока с помощью прямой манипуляции . Это позволяет сначала выполнять пользовательскую обработку ввода, а затем возобновлять обработку прямых операций , чтобы сделать приложение более чувствительным к сенсорным взаимодействиям, таким как прокрутка и масштабирование.
В direct Manipulation можно передавать только активные сенсорные контакты. Использование неактивных или не сенсорных контактов приводит к возникновению исключения.
При указании сенсорного контакта, передаваемого в direct Manipulation , платформа проходит вверх по родительской цепочке и устанавливает контакт в окне просмотра Direct Manipulation каждого объекта ScrollViewer , обнаруженного в указанном порядке, до тех пор, пока прогулка не достигнет любого элемента (включая исходный целевой элемент), который не имеет ManipulationMode , содержащего ManipulationModes.System. Данный сенсорный контакт может быть связан только с одной цепочкой визуальных элементов одновременно. Вызов TryStartDirectManipulation
более одного раза для одного контакта приводит к тому, что любая предыдущая цепочка будет освобождена.