ManipulationDelta 클래스

정의

조작 이벤트가 발생할 때 누적된 변환 데이터를 포함합니다.Contains transformation data that is accumulated when manipulation events occur.

public ref class ManipulationDelta
public class ManipulationDelta
type ManipulationDelta = class
Public Class ManipulationDelta
상속
ManipulationDelta

예제

다음 예제에서는 이벤트 처리기는 ManipulationDelta 이벤트입니다.The following example shows an event handler for the ManipulationDelta event. 예제에 적용 됩니다는 Translation, Scale, 및 Rotation 이동, 크기 조정 및 회전 속성을 Rectangle.The example applies the Translation, Scale, and Rotation properties to move, resize, and rotate a Rectangle. 이 예제는에서 더 큰 예제의 일부 연습: 만드는 첫 번째 터치 애플리케이션합니다.This example is part of a larger example in Walkthrough: Creating Your First Touch Application.

void Window_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
{
    
    // Get the Rectangle and its RenderTransform matrix.
    Rectangle rectToMove = e.OriginalSource as Rectangle;
    Matrix rectsMatrix = ((MatrixTransform)rectToMove.RenderTransform).Matrix;

    // Rotate the Rectangle.
    rectsMatrix.RotateAt(e.DeltaManipulation.Rotation, 
                         e.ManipulationOrigin.X, 
                         e.ManipulationOrigin.Y);

    // Resize the Rectangle.  Keep it square 
    // so use only the X value of Scale.
    rectsMatrix.ScaleAt(e.DeltaManipulation.Scale.X, 
                        e.DeltaManipulation.Scale.X, 
                        e.ManipulationOrigin.X,
                        e.ManipulationOrigin.Y);

    // Move the Rectangle.
    rectsMatrix.Translate(e.DeltaManipulation.Translation.X,
                          e.DeltaManipulation.Translation.Y);

    // Apply the changes to the Rectangle.
    rectToMove.RenderTransform = new MatrixTransform(rectsMatrix);

    Rect containingRect =
        new Rect(((FrameworkElement)e.ManipulationContainer).RenderSize);

    Rect shapeBounds =
        rectToMove.RenderTransform.TransformBounds(
            new Rect(rectToMove.RenderSize));

    // Check if the rectangle is completely in the window.
    // If it is not and intertia is occuring, stop the manipulation.
    if (e.IsInertial && !containingRect.Contains(shapeBounds))
    {
        e.Complete();
    }

    e.Handled = true;
}
Private Sub Window_ManipulationDelta(ByVal sender As Object, ByVal e As ManipulationDeltaEventArgs)

    ' Get the Rectangle and its RenderTransform matrix.
    Dim rectToMove As Rectangle = e.OriginalSource
    Dim rectTransform As MatrixTransform = rectToMove.RenderTransform
    Dim rectsMatrix As Matrix = rectTransform.Matrix


    ' Rotate the shape
    rectsMatrix.RotateAt(e.DeltaManipulation.Rotation,
                         e.ManipulationOrigin.X,
                         e.ManipulationOrigin.Y)

    ' Resize the Rectangle. Keep it square 
    ' so use only the X value of Scale.
    rectsMatrix.ScaleAt(e.DeltaManipulation.Scale.X,
                        e.DeltaManipulation.Scale.X,
                        e.ManipulationOrigin.X,
                        e.ManipulationOrigin.Y)

    'move the center
    rectsMatrix.Translate(e.DeltaManipulation.Translation.X,
                          e.DeltaManipulation.Translation.Y)

    ' Apply the changes to the Rectangle.
    rectTransform = New MatrixTransform(rectsMatrix)
    rectToMove.RenderTransform = rectTransform

    Dim container As FrameworkElement = e.ManipulationContainer
    Dim containingRect As New Rect(container.RenderSize)

    Dim shapeBounds As Rect = rectTransform.TransformBounds(
                                New Rect(rectToMove.RenderSize))

    ' Check if the rectangle is completely in the window.
    ' If it is not and intertia is occuring, stop the manipulation.
    If e.IsInertial AndAlso Not containingRect.Contains(shapeBounds) Then
        e.Complete()
    End If

    e.Handled = True
End Sub

설명

ManipulationDelta 클래스 조작의 위치 변경에 대 한 정보를 포함 합니다.The ManipulationDelta class contains information about the changes in the position of a manipulation. WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) 으로 해석 된 Translation, Expansion, 또는 Rotation합니다.interprets the changes as a Translation, Expansion, or Rotation. 경우는 ManipulationDelta 에서 이벤트가 발생을 UIElement에서 속성을 사용를 ManipulationDelta 조작할 수 해야 하는 개체를 변환 하는 개체입니다.When the ManipulationDelta event occurs on a UIElement, use the properties on a ManipulationDelta object to transform the object that should be manipulated. 합니다 ManipulationDeltaEventArgs 형식의 두 가지 속성을 제공 하는 클래스 ManipulationDelta: DeltaManipulationCumulativeManipulation입니다.The ManipulationDeltaEventArgs class provides two properties of type ManipulationDelta: DeltaManipulation and CumulativeManipulation.

조작에 대 한 자세한 내용은 참조는 입력 개요합니다.For more information about manipulations, see the Input Overview. 조작에 응답 하는 애플리케이션 예제를 보려면 연습: 만드는 첫 번째 터치 애플리케이션합니다.For an example of an application that responds to manipulations, see Walkthrough: Creating Your First Touch Application.

생성자

ManipulationDelta(Vector, Double, Vector, Vector)

ManipulationDelta 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ManipulationDelta class.

속성

Expansion

디바이스 독립적 단위(단위당 1/96인치)device-independent units (1/96th inch per unit)에서 조작의 크기가 조정된 양을 가져오거나 설정합니다.Gets or sets the amount the manipulation has resized in 디바이스 독립적 단위(단위당 1/96인치)device-independent units (1/96th inch per unit).

Rotation

조작의 회전(도)을 가져오거나 설정합니다.Gets or sets the rotation of the manipulation in degrees.

Scale

조작의 크기가 승수로 조정된 양을 가져오거나 설정합니다.Gets or sets the amount the manipulation has resized as a multiplier.

Translation

조작의 선형 동작을 가져오거나 설정합니다.Gets or sets the linear motion of the manipulation.

메서드

Equals(Object)

지정한 개체가 현재 개체와 같은지를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 string을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

적용 대상