# Detecting Gesture

The following steps indicate how to detect gestures, rotation, and scale and transition.  1.        Add a Label control to the Form(Label1) and set the following properties:  ·         AutoSize = False  ·         BackColor = Color.Cyan  ·

## Content

The following steps indicate how to detect gestures, rotation, and scale and transition.

1. Add a **Label** control to the Form(Label1) and set the following properties:
  * AutoSize = False
  * BackColor = Color.Cyan
  * Size = Size(300, 300)

2. Add a **C1TouchEventProvider** to the Form. (C1TouchEventProvider1)
3. Select **Label1** and set the "EnableTouchEvents of C1TouchEventProvider1" property to **True** in the Property Window.
4. Select the **C1TouchEventProvider1**, and add the following code to its **ManipulationDelta** event.
  [C#]

  ```csharp
  using C1.Win.TouchToolKit;

  private void Form1_Load(object sender, System.EventArgs e)
  {
    label1.AutoSize = false;
    label1.BackColor = Color.Cyan;
    label1.Size = new Size(300, 300);
    c1TouchEventProvider1.SetEnableTouchEvents(label1, true);
    c1TouchEventProvider1.ManipulationDelta += c1TouchEventProvider1_ManipulationDelta;
  }

  private void c1TouchEventProvider1_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
  {
    if (e.TargetControl == this.label1)
    {
      label1.Text = string.Format("Scale:{0}\r\nRotation:{1}\r\nTranslation:{2}", e.Delta.Scale, e.Delta.Rotation, e.Delta.Translation);
    }
  }
  ```

  [Visual Basic]

  ```vbnet
  Imports C1.Win.TouchToolKit

  Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    Label1.AutoSize = False
    Label1.BackColor = Color.Cyan
    Label1.Size = New Size(300, 300)
    C1TouchEventProvider1.SetEnableTouchEvents(Label1, True)
  End Sub

  Private Sub C1TouchEventProvider1_ManipulationDelta(sender As System.Object, e As ManipulationDeltaEventArgs) Handles C1TouchEventProvider1.ManipulationDelta
    If e.TargetControl Is Label1 Then
      Label1.Text = String.Format("Scale:{0}\r\nRotation:{1}\r\nTranslation:{2}", e.Delta.Scale, e.Delta.Rotation, e.Delta.Translation)
    End If
  End Sub
  ```

5. Run the project, and operate Rotation or Scale multi-touch actions on the Label1.
  You can use C1TouchEventProvider.ManipulationMode property to detect specific gestures. To detect only rotation gesture, use the following code.
  [C#]

  ```csharp
  c1TouchEventProvider1.ManipulationMode = C1.Win.TouchToolKit.ManipulationModes.Rotate;
  ```

  [Visual Basic]

  ```vbnet
  C1TouchEventProvider1.ManipulationMode = C1.Win.TouchToolKit.ManipulationModes.Rotate
  ```

  To detect multiple gesture, use the following code.

  [C#]

  ```csharp
  using C1.Win.TouchToolKit;
  c1TouchEventProvider1.ManipulationMode = ManipulationModes.Rotate | ManipulationModes.Scale;
  ```

  [Visual Basic]

  ```vbnet
  Imports C1.Win.TouchToolKit
  C1TouchEventProvider1.ManipulationMode = ManipulationModes.Rotate Or ManipulationModes.Scale
  ```
