UIElement.ManipulationInertiaStarting Событие

Определение

Происходит, когда устройство ввода теряет контакт с объектом UIElement в процессе манипуляции и начинается инерция.

public:
 event EventHandler<System::Windows::Input::ManipulationInertiaStartingEventArgs ^> ^ ManipulationInertiaStarting;
public event EventHandler<System.Windows.Input.ManipulationInertiaStartingEventArgs> ManipulationInertiaStarting;
member this.ManipulationInertiaStarting : EventHandler<System.Windows.Input.ManipulationInertiaStartingEventArgs> 
Public Custom Event ManipulationInertiaStarting As EventHandler(Of ManipulationInertiaStartingEventArgs) 

Тип события

Примеры

В следующем примере показан ManipulationInertiaStarting обработчик событий и задано требуемое замедление для преобразования, расширения и поворота, используемого во время инерции. Этот пример является частью более крупного примера в разделе Пошаговое руководство. Создание первого сенсорного приложения.

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

Комментарии

Это ManipulationInertiaStarting событие возникает, когда пользователь поднимает все пальцы с экрана во время манипуляции. Например, если пользователь "бросает" UIElement на поверхность, он прикоснется UIElement к , чтобы начать действие, переместить палец по экрану на короткое расстояние, а затем отпустит UIElement. Когда пользователь отпускает элемент, начинается инерция ManipulationInertiaStarting и происходит событие . Объект UIElement продолжает получать ManipulationDelta события, указывающие на то, что в элементе возникает инерция.

Это событие можно использовать для указания поведения инерции. Например, можно задать начальную скорость, используемую при начале инерции. Вы также можете указать степень инерции, установив требуемое замедление или задав требуемое размещение. Эти значения можно задать для каждого типа манипуляций (преобразование, расширение или поворот) независимо друг от друга. Для получения дополнительной информации см. ManipulationInertiaStartingEventArgs.

Дополнительные сведения о манипуляциях см. в разделе Общие сведения о входных данных. Пример приложения, реагирующего на манипуляции, см. в разделе Пошаговое руководство. Создание приложения первого сенсорного ввода.

Сведения о маршрутизируемом событии

Поле идентификатора ManipulationInertiaStartingEvent
Стратегия маршрутизации Восходящей
Делегат EventHandler<TEventArgs> имеет тип данных ManipulationInertiaStartingEventArgs.

Применяется к