Version

Touch Gestures Overview

Topic Overview

Introduction

Touch Gestures Introduction

Windows Forms controls prior to Windows 7 did not natively support gestures of user interaction with a touch input digitizer surface through managed code. You may administer Windows7 supported WM_GESTURE message in unmanaged code to provide support for the recognized Windows gestures.

One well-known gesture, kinetic scrolling with inertia, also referred to as touch panning occurs when the user drags a finger across a touch surface, with the speed and direction of the movement determining the direction of and speed at which the window scrolls. The scrolling continues, even after the user withdrawals his or her finger, gradually decelerating before coming to a complete stop, a behavior known as panning inertia . Any user interaction occurring during this deceleration immediately stops the inertial panning. This behavior is prevalent on smart phones and tablet devices such as iPhone, iPad and Windows touch-enabled Surface devices.

Another application of the panning gesture is drag selection, where the user drags a lasso around the screen, selecting any items captured within the bounds of the lasso rectangle.

Other gestures also have default behaviors associated with them, for example, displaying context menu using a press-and-hold gesture. This is where the user holds a finger down on the touch surface without moving it – displays a context menu after a short time.

Gesture-Support Controls

Controls

The following list contains the Infragistics touch-enabled controls with gestures support.

  • UltraCalendarCombo

  • UltraCombo

  • UltraDayView

  • UltraDesktopAlert

  • UltraDockManager

  • UltraExplorerBar

  • UltraGanttView

  • UltraGrid

  • UltraListView

  • UltraLiveTileView

  • UltraMonthViewMulti

  • UltraMonthViewSingle

  • UltraMessageBox

  • UltraRadialMenu

  • UltraTimelineView

  • UltraTree

  • UltraToolbarsManager(Ribbon)

  • UltraWeekView

The Infragistics controls emulate the Windows operating system’s standard user interface behavior. We apply this paradigm to support touch gestures handling our controls.

Panning Gestures

Slow vertical panning

User Action Result

User’s finger makes contact with touch surface and moves it slowly in an upward direction, and then loses contact with the touch surface.

As the user’s finger moves across the touch surface, the control’s scroll position incrementally increases by one item each time the finger traverses a distance approximately equal to the height of one item. The scrollbar’s thumb element moves downward, while the viewport shifts in an upward direction. Items, which were previously below the viewable area, move into view. When the user’s finger is withdrawn, the control stops scrolling immediately.

Fast vertical panning

User Action Result

User makes contact with touch surface with one finger and moves it quickly in an upward direction, and then loses contact with the touch surface.

Same behavior as with the Slow vertical panning, except that the control continues to scroll after the user’s finger is withdrawn, gradually decelerating before coming to a complete stop.

Multi-directional pan scroll

User Action Result

User makes contact with touch surface with one finger and moves it at a moderate speed in an upward direction, then, after moving upward an inch or so, moves it quickly toward the left and then releases the finger, losing contact with the touch surface.

The control initially scrolls as it does in the Slow vertical panning, with a slightly faster scroll speed. As the user changes the direction of their swipe from vertical to horizontal the control begins to scroll horizontally, with the thumb moving toward the right, and the viewport shifting toward the left. The control continues to scroll horizontally after the finger loses contact with the touch surface, gradually decelerating before coming to a complete stop.

Multi-directional pan select

User Action Result

User makes contact with touch surface with one finger and moves it slowly toward the left, then, after moving an inch or so, moves it around the touch surface within the bounds of the control.

After the initial horizontal movement, a semi-transparent drag rectangle, also known as a lasso, appears with the corners defined by the initial point of contact and the finger’s current location. As the rectangle changes its size, it selects those items whose bounds intersect with the drag rectangle, and items whose bounds once intersected but not anymore, are deselected.

Multi-directional pan extended selection

Note
Note:

The following use case requires one or more items to be selected in the control before initiating the action.

User Action Result

While holding the Control key down, the user makes contact with one finger on the touch surface and moves slowly toward the left, then, after moving an inch or so, moves it around the touch surface within the bounds of the control.

Similar behavior to Multi-directional pan scroll use case with the following exception:

When the lasso intersects with items that were selected before the drag selection operation began, those items become deselected. Such items become re-selected again when the lasso no longer intersects with them.

Note
Note:

Releasing the control key during the drag selection operation, results in the pre-selected items follow the normal selection rules from that point forward.

Press and Tap Gestures

Press and hold

Note
Note:

The following use case requires that the control has a context menu.

User Action Result

User makes contact with touch surface with one finger and maintains contact without significant movement for approximately two seconds, and then loses contact with the touch surface.

After approximately two seconds elapse since initial making contact, a faded gray ring-like indicator appears around the point of contact. When the user removes the finger, the control’s context menu appears.

Press and tap

User Action Result

User makes contact with touch surface with one finger and maintains contact without significant movement, taps with a second finger at an arbitrary location, and then removes both fingers

Removing both fingers from contact with the touch screen, the control’s context menu appears.

Normal tap

User Action Result

User makes brief contact with touch surface with one finger and releases, for example tapping the surface at an arbitrary location.

The control behaves as it does to a left mouse button click.

  • If the tap location coincides with a selectable item, the item is selected.

  • If the tap location coincides with a clickable element such as a button, the button’s click action is invoked.

Captured tap and drag

User Action Result

User makes contact with a user interface element, which typically captures mouse movement, holds the finger stationary for a few seconds, and then drags the finger across the touch surface.

The behavior observed is identical to captured mouse drag operation. A scroll of a thumb, for example, will move along with the user’s finger.

Related Content

Topics

The following topics provide additional information related to this topic.

Topic Purpose

The topics in this group illustrate Infragistics touch-enabled control’s Touch Gestures.

This topic introduces the Infragistics touch-enabled controls’ gestures events.

This MSDN section describes the various gestures supported by Windows Touch.