다음을 통해 공유


UIElement.TryStartDirectManipulation(Pointer) 메서드

정의

현재 UIElement가 포함된 ScrollViewer 부모에서 직접 조작 처리(시스템 정의 이동/확대/축소)를 다시 시작합니다.

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

조작을 시작한 활성 터치 지점입니다.

반환

Boolean

bool

ScrollViewer 부모가 있고 값을 설정하여 이동/확대/축소 작업을 다시 시작하면 true입니다. 메서드를 호출하면 작업이 수행되지 않는 경우 false입니다.

설명

기본적으로 ScrollViewer 요소의 터치 입력 상호 작용은 UI 스레드에서 직접 조작 엔진에 의해 처리됩니다. 직접 조작 처리가 시작된 후에는 앱이 연결된 포인터 이벤트를 직접 처리할 수 없습니다. ScrollViewer 상호 작용을 시작할 때 CancelDirectManipulations를 호출하고 UI 스레드에서 포인터 이벤트를 처리할 수 있으므로 ScrollViewer에서 사용자 지정 입력 처리를 수행할 수 있습니다.

ScrollViewer 상호 작용을 시작할 때 직접 조작 처리를 취소하는 경우 TryStartDirectManipulation을 호출하여 직접 조작이 입력 스트림을 처리하도록 다시 시작할 수 있습니다. 이렇게 하면 먼저 사용자 지정 입력 처리를 수행하고 직접 조작 처리를 다시 시작하면 스크롤 및 확대/축소와 같은 터치 조작에 대한 앱의 응답성이 높아질 수 있습니다.

활성 터치 연락처만 직접 조작에 전달할 수 있습니다. 비활성 또는 비터치 연락처를 사용하면 예외가 throw됩니다.

직접 조작에 전달할 터치 연락처를 지정하면 프레임워크가 부모 체인을 걷고 각 ScrollViewer직접 조작 뷰포트에서 연락처를 순서대로 설정하여 Walk가 ManipulationModes.System을 포함하는 ManipulationMode가 없는 요소(원래 대상 요소 포함)에 도달할 때까지 발생합니다. 지정된 터치 접촉은 한 번에 하나의 시각적 개체 체인과만 연결할 수 있습니다. 동일한 연락처에서 TryStartDirectManipulation을 두 번 이상 호출하면 이전 체인이 릴리스됩니다.

적용 대상

추가 정보