InertiaTranslationBehavior Class

Definition

Controls deceleration on a translation manipulation during inertia.

public ref class InertiaTranslationBehavior
public class InertiaTranslationBehavior
type InertiaTranslationBehavior = class
Public Class InertiaTranslationBehavior
Inheritance
InertiaTranslationBehavior

Examples

The following example shows the ManipulationInertiaStarting event handler and sets the desired deceleration for translation, expansion, and rotation that is used during inertia. This example is part of a larger example in Walkthrough: Creating Your First Touch Application.

void Window_InertiaStarting(object sender, ManipulationInertiaStartingEventArgs e)
{

    // Decrease the velocity of the Rectangle's movement by 
    // 10 inches per second every second.
    // (10 inches * 96 pixels per inch / 1000ms^2)
    e.TranslationBehavior.DesiredDeceleration = 10.0 * 96.0 / (1000.0 * 1000.0);

    // Decrease the velocity of the Rectangle's resizing by 
    // 0.1 inches per second every second.
    // (0.1 inches * 96 pixels per inch / (1000ms^2)
    e.ExpansionBehavior.DesiredDeceleration = 0.1 * 96 / (1000.0 * 1000.0);

    // Decrease the velocity of the Rectangle's rotation rate by 
    // 2 rotations per second every second.
    // (2 * 360 degrees / (1000ms^2)
    e.RotationBehavior.DesiredDeceleration = 720 / (1000.0 * 1000.0);

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

    ' Decrease the velocity of the Rectangle's movement by 
    ' 10 inches per second every second.
    ' (10 inches * 96 pixels per inch / 1000ms^2)
    e.TranslationBehavior.DesiredDeceleration = 10.0 * 96.0 / (1000.0 * 1000.0)

    ' Decrease the velocity of the Rectangle's resizing by 
    ' 0.1 inches per second every second.
    ' (0.1 inches * 96 pixels per inch / (1000ms^2)
    e.ExpansionBehavior.DesiredDeceleration = 0.1 * 96 / (1000.0 * 1000.0)

    ' Decrease the velocity of the Rectangle's rotation rate by 
    ' 2 rotations per second every second.
    ' (2 * 360 degrees / (1000ms^2)
    e.RotationBehavior.DesiredDeceleration = 720 / (1000.0 * 1000.0)

    e.Handled = True
End Sub

Remarks

The InertiaTranslationBehavior class specifies how a translation manipulation behaves when it is inertia. Use the TranslationBehavior property in the ManipulationInertiaStarting event to do the following:

  • Specify the initial velocity of the inertia when it begins by setting the InitialVelocity property.

  • Specify the desired position of the manipulation when inertia ends by setting the DesiredDisplacement property.

  • Specify the desired deceleration of the inertia by setting the DesiredDeceleration property.

Set either the DesiredDisplacement or the DesiredDeceleration, but not both. When you set one of these properties, the other property is changed to Double.NaN if it has a value.

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.

Constructors

InertiaTranslationBehavior()

Initializes a new instance of the InertiaTranslationBehavior class.

Properties

DesiredDeceleration

Gets or sets the rate the linear movement slows in device-independent units (1/96th inch per unit) per squared millisecond.

DesiredDisplacement

Gets or sets the linear movement of the manipulation at the end of inertia.

InitialVelocity

Gets or sets the initial rate of linear movement at the start of the inertia phase.

Methods

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)

Applies to