TouchDevice.Id Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets the unique identifier of the TouchDevice, as provided by the operating system.

Namespace:   System.Windows.Input
Assembly:  PresentationCore (in PresentationCore.dll)

public int Id { get; }

Property Value

Type: System.Int32

The unique identifier of the TouchDevice.

A TouchDevice represents a single touch on a screen. If multiple touches are present, use the Id property to distinguish between them.

The following example handles the TouchMove events that occur on a Canvas. When a touch moves on the Canvas, the Id is checked. If the move came from the first touch, its location is recorded. If the move came from the second touch, a line is drawn from the position of the first touch to the position of the second touch.

This example is part of a larger example available in the TouchDevice class overview.

private void canvas_TouchMove(object sender, TouchEventArgs e)
    Canvas _canvas = (Canvas)sender as Canvas;
    if (_canvas != null)
        TouchPoint tp = e.GetTouchPoint(_canvas);
        // This is the first touch point; just record its position.
        if (e.TouchDevice.Id == firstTouchId)
            pt1.X = tp.Position.X;
            pt1.Y = tp.Position.Y;
        // This is not the first touch point; draw a line from the first point to this one.
        else if (e.TouchDevice.Id != firstTouchId)
            pt2.X = tp.Position.X;
            pt2.Y = tp.Position.Y;

            Line _line = new Line();
            _line.Stroke = new RadialGradientBrush(Colors.White, Colors.Black);
            _line.X1 = pt1.X;
            _line.X2 = pt2.X;
            _line.Y1 = pt1.Y;
            _line.Y2 = pt2.Y;

            _line.StrokeThickness = 2;

.NET Framework
Available since 4.0
Available since 3.0
Windows Phone Silverlight
Available since 7.0
Return to top