# Touch Events

Wisej.NET supports all touch events on mobile and touch devices, and it **simulates** most of the touch events on desktop non-touch devices.

The biggest advantage of being able to use the same events on any device, regardless of their touch-hardware, is to reduce the complexity of the code and handle only one set of events.

## Supported events

Wisej.NET supports the following touch events:

* **Tap**. Fired when a pointer taps on the screen.
* **LongTap**. Fired when a pointer holds on the screen.
* **Pinch**. Fired when two fingers moved away or toward each other.
* **Swipe**. Fired when a pointed swiped over the screen.
* **Track**. Fired when a pointer grabs a control and moves over it.
* **TouchStart**. Fired when a touch point is placed on the screen.
* **TouchMove**. Fired when a touch point is moved over the screen.
* **TouchEnd**. Fired when a touch point is removed from the screen.
* **TouchCancel**. Fired when a touch point is canceled by the implementation. For example, if a new item is created on top of the surface that fired TouchStart.

{% hint style="warning" %}
Event handling for these events is activated only if there is an event handler attached. See [Lazy Events](https://docs.wisej.com/docs/controls/lazy-events#lazy-events).
{% endhint %}

## Simulated Events

* **Tap**. Similar to Click.
* **LongTap**. Fired when the mouse is pressed and held down.
* **Swipe**. Fired when the mouse is pressed and moved quickly.
* **Track**. Fired when the mouse is pressed and moved.
* **TouchStart**. Fired when the mouse is pressed.
* **TouchMove**. Fired when the mouse moves over the control. Similar to MouseMove.
* **TouchEnd**. Fires when the mouse is released.

See what data you get on a desktop for a simulated **Swipe** event.

![](https://553579532-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MF1D11gPs_az3xaKusw%2Fuploads%2Fgit-blob-2279225108ccd4af46bae9fa858b000922691154%2FSwipe.gif?alt=media)
