Export (0) Print
Expand All

ManipulationInertiaStartingEventArgs Class

Provides data for the ManipulationInertiaStarting event.

System.Object
  System.EventArgs
    System.Windows.RoutedEventArgs
      System.Windows.Input.InputEventArgs
        System.Windows.Input.ManipulationInertiaStartingEventArgs

Namespace:  System.Windows.Input
Assembly:  PresentationCore (in PresentationCore.dll)

public sealed class ManipulationInertiaStartingEventArgs : InputEventArgs

The ManipulationInertiaStartingEventArgs type exposes the following members.

  NameDescription
Public propertyDeviceGets the input device that initiated this event. (Inherited from InputEventArgs.)
Public propertyExpansionBehaviorGet or sets the rate of slowdown of expansion inertial movement.
Public propertyHandledGets or sets a value that indicates the present state of the event handling for a routed event as it travels the route. (Inherited from RoutedEventArgs.)
Public propertyInitialVelocitiesGets the rates of changes to the manipulation that occur before inertia starts.
Public propertyManipulationContainerGets the container that the ManipulationOrigin property is relative to.
Public propertyManipulationOriginGets or sets the point from which the manipulation originated.
Public propertyManipulatorsGets a collection of objects that represents the touch contacts for the manipulation.
Public propertyOriginalSourceGets the original reporting source as determined by pure hit testing, before any possible Source adjustment by a parent class. (Inherited from RoutedEventArgs.)
Public propertyRotationBehaviorGets or sets the rate of slowdown of rotational inertial movement.
Public propertyRoutedEventGets or sets the RoutedEvent associated with this RoutedEventArgs instance. (Inherited from RoutedEventArgs.)
Public propertySourceGets or sets a reference to the object that raised the event. (Inherited from RoutedEventArgs.)
Public propertyTimestampGets the time when this event occurred. (Inherited from InputEventArgs.)
Public propertyTranslationBehaviorGets and sets the rate of slowdown of linear inertial movement.
Top

  NameDescription
Public methodCancelCancels the manipulation.
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodSetInertiaParameterSpecifies the behavior of a manipulation during inertia.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

You can use the ManipulationInertiaStartingEventArgs object to specify the inertial behavior of a manipulation. You can specify the inertial behavior for each type of manipulation separately by using the TranslationBehavior, ExpansionBehavior, and RotationBehavior properties. Each property is a type of object that represents the inertial behavior and in each case, you can specify the following:

  • The initial velocity of the inertia when it begins.

  • The desired position of the manipulation when inertia ends.

  • The desired deceleration of the inertia.

You typically specify either the desired position of the manipulation when inertia ends or the desired deceleration of the inertia, but not both.

For more information about manipulations, see the Input Overview.

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;
}

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4

.NET Framework Client Profile

Supported in: 4

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2014 Microsoft