Path.Data Property


Gets or sets a Geometry that specifies the shape to be drawn.

 property Geometry ^ Data { Geometry ^ get(); void set(Geometry ^ value); };
Geometry Data();

void Data(Geometry value);
public Geometry Data { get; set; }
var geometry =; = geometry;
Public Property Data As Geometry
- or -
<Path Data="moveAndDrawCommands"/>

Property Value


A description of the shape to be drawn.


The following example uses a Path to draw an ellipse.

  <Path Fill="Gold" Stroke="Black" StrokeThickness="1">
      <EllipseGeometry Center="50,50" RadiusX="50" RadiusY="50" />

In XAML, you can also use Move and draw commands syntax as the value for the Data property. This example uses this syntax to specify the shape of a Path.

  <Path Stroke="DarkGoldenRod" StrokeThickness="3"
    Data="M 100,200 C 100,25 400,350 400,175 H 280"/>

The Data attribute string begins with the move to command, indicated by "M", which establishes a start point for the path in the coordinate system of the Canvas. Strings in the Move and draw commands syntax are case-sensitive and determine whether commands use relative (offset) or absolute coordinates. The first segment is a cubic Bezier curve beginning at (100,200) and ending at (400,175), drawn using the two control points (100,25) and (400,350).

The second segment begins with an absolute horizontal line to command "H", which specifies a line drawn from the preceding subpath's endpoint (400,175) to a new endpoint (280,175). Because it is a horizontal line to command, the value specified is an x-coordinate.

Applies to

See also