UIElement.ManipulationStarting Event

Definition

Occurs when the manipulation processor is first created.

C#
public event ManipulationStartingEventHandler ManipulationStarting;
XAML
<uiElement ManipulationStarting="eventhandler"/>

Event Type

Remarks

For custom controls and interaction experiences, see GestureRecognizer.

An element must have a ManipulationMode value other than None or System to be a manipulation event source. The default value of ManipulationMode is System, which enables built-in control logic to process manipulations, but doesn't permit app code to handle manipulation events. If you want to handle manipulations, set ManipulationMode to All, or to specific ManipulationModes values. For more info, see ManipulationMode.

ManipulationStarting fires basically any time that a pointer interacts with an element where the element enables manipulation. This includes cases where the manipulation is interpreted as a gesture and the pointers never move, for example a Tapped or Holding gesture. If the pointers do move, ManipulationStarted typically fires thereafter.

ManipulationStarting is a routed event. If the event is permitted to bubble up to parent elements because it goes unhandled, then it is possible to handle the event on parent elements even if ManipulationMode is None or System on the parent element. For more info on the routed event concept, see Events and routed events overview.

For touch actions and also for interaction-specific or manipulation events that are consequences of a touch action, an element must be hit-test visible in order to be the event source and fire the event that is associated with the action. UIElement.Visibility must be Visible. Other properties of derived types also affect hit-test visibility. For more info, see Events and routed events overview.

ManipulationStarting supports the ability to attach event handlers to the route that will be invoked even if the event data for the event is marked Handled. See AddHandler.

Windows 8 behavior

Windows 8 had an issue with firing this event if multiple gestures happened in a short period of time. For example, Windows 8 might only fire ManipulationStarting for the first gesture and not the second. The issue is fixed starting with Windows 8.1; multiple starting gestures processed by the input system each fire a distinct ManipulationStarting event.

Apps that were compiled for Windows 8 but running on Windows 8.1 continue to use the Windows 8 behavior.

Applies to

Product Versions
WinRT Build 10240, Build 10586, Build 14383, Build 15063, Build 16299, Build 17134, Build 17763, Build 18362, Build 19041, Build 20348, Build 22000, Build 22621, Build 26100

See also