PathFigure Class
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Represents a subsection of a geometry, a single connected series of two-dimensional geometric segments.
Inheritance Hierarchy
System.Object
System.Windows.DependencyObject
System.Windows.Media.PathFigure
Namespace: System.Windows.Media
Assembly: System.Windows (in System.Windows.dll)
Syntax
'Declaration
<ContentPropertyAttribute("Segments", True)> _
Public NotInheritable Class PathFigure _
Inherits DependencyObject
[ContentPropertyAttribute("Segments", true)]
public sealed class PathFigure : DependencyObject
<PathFigure .../>
-or-
<PathFigure ...>
oneOrMorePathSegments
</PathFigure
XAML Values
- oneOrMorePathSegments
One or more object elements that derive from PathSegment: typically these are ArcSegment, BezierSegment, LineSegment, PolyBezierSegment, PolyQuadraticBezierSegment, or QuadraticBezierSegment. Object elements defined here become members of the PathSegmentCollection when code accesses the Segments property at run time.
The PathFigure type exposes the following members.
Properties
Name | Description | |
---|---|---|
Dispatcher | Gets the Dispatcher this object is associated with. (Inherited from DependencyObject.) | |
IsClosed | Gets or sets a value that indicates whether this figure's first and last segments are connected. | |
IsFilled | Gets or sets a value that indicates whether the contained area of this PathFigure is to be used for hit-testing, rendering, and clipping. | |
Segments | Gets or sets the collection of segments that define the shape of this PathFigure object. | |
StartPoint | Gets or sets the Point where the PathFigure begins. |
Top
Methods
Name | Description | |
---|---|---|
CheckAccess | Determines whether the calling thread has access to this object. (Inherited from DependencyObject.) | |
ClearValue | Clears the local value of a dependency property. (Inherited from DependencyObject.) | |
Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) | |
GetAnimationBaseValue | Returns any base value established for a Silverlight dependency property, which would apply in cases where an animation is not active. (Inherited from DependencyObject.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetValue | Returns the current effective value of a dependency property from a DependencyObject. (Inherited from DependencyObject.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ReadLocalValue | Returns the local value of a dependency property, if a local value is set. (Inherited from DependencyObject.) | |
SetValue | Sets the local value of a dependency property on a DependencyObject. (Inherited from DependencyObject.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Top
Fields
Name | Description | |
---|---|---|
IsClosedProperty | Identifies the IsClosed dependency property. | |
IsFilledProperty | Identifies the IsFilled dependency property. | |
SegmentsProperty | Identifies the Segments dependency property. | |
StartPointProperty | Identifies the StartPoint dependency property. |
Top
Remarks
The defining property of a PathFigure is its StartPoint, because it specifies the point from which the first contained line segment starts.
If you want a geometry where various figures are not connected to one another, you would specify multiple PathFigure objects within the PathFigureCollection, each with different StartPoint values.
Examples
The following example creates a simple PathGeometry made up of a single PathFigure with a LineSegment and displays it using a Path element. The PathFigure object's StartPoint is set to 10,20 and a LineSegment is defined with an end point of 100,130. The following illustration shows the PathGeometry created by this example.
<Canvas>
<Path Stroke="Black" StrokeThickness="1">
<Path.Data>
<PathGeometry>
<PathGeometry.Figures>
<PathFigure StartPoint="10,20">
<PathFigure.Segments>
<LineSegment Point="100,130"/>
</PathFigure.Segments>
</PathFigure>
</PathGeometry.Figures>
</PathGeometry>
</Path.Data>
</Path>
</Canvas>
This example uses multiple segments in a PathFigure.
<Canvas>
<Path Stroke="Black" StrokeThickness="1" >
<Path.Data>
<PathGeometry>
<PathGeometry.Figures>
<PathFigure StartPoint="10,50">
<PathFigure.Segments>
<BezierSegment Point1="100,0"
Point2="200,200"
Point3="300,100"/>
<LineSegment Point="400,100" />
<ArcSegment Size="50,50" RotationAngle="45"
IsLargeArc="True" SweepDirection="Clockwise"
Point="200,100"/>
</PathFigure.Segments>
</PathFigure>
</PathGeometry.Figures>
</PathGeometry>
</Path.Data>
</Path>
</Canvas>
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also