Как создать LineSegment в PathGeometry
В этом примере показано, как создать сегмент линии. Чтобы создать сегмент линии, используйте классы PathGeometry, PathFigure и LineSegment.
Пример
В следующем примере нарисован LineSegment от (10, 50) до (200, 70). На следующем рисунке показан итоговый LineSegment; для отображения системы координат добавлена фоновая сетка.
СтрокаSegment, полученная от (10 50) до (200 70)
В языке XAML можно использовать синтаксис атрибута для описания пути.
<Path Stroke="Black" StrokeThickness="1"
Data="M 10,50 L 200,70" />
(Обратите внимание, что этот синтаксис атрибута фактически создает StreamGeometryупрощенную версию PathGeometry. Дополнительные сведения см. на странице Синтаксис разметки пути.)
В XAML сегмент линии можно также начертить с использованием синтаксиса элемента объекта. Следующий пример эквивалентен предыдущему примеру XAML.
<Path Stroke="Black" StrokeThickness="1">
<Path.Data>
<PathGeometry>
<PathFigure StartPoint="10,50">
<LineSegment Point="200,70" />
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
PathFigure myPathFigure = new PathFigure();
myPathFigure.StartPoint = new Point(10, 50);
LineSegment myLineSegment = new LineSegment();
myLineSegment.Point = new Point(200, 70);
PathSegmentCollection myPathSegmentCollection = new PathSegmentCollection();
myPathSegmentCollection.Add(myLineSegment);
myPathFigure.Segments = myPathSegmentCollection;
PathFigureCollection myPathFigureCollection = new PathFigureCollection();
myPathFigureCollection.Add(myPathFigure);
PathGeometry myPathGeometry = new PathGeometry();
myPathGeometry.Figures = myPathFigureCollection;
Path myPath = new Path();
myPath.Stroke = Brushes.Black;
myPath.StrokeThickness = 1;
myPath.Data = myPathGeometry;
Dim myPathFigure As New PathFigure()
myPathFigure.StartPoint = New Point(10, 50)
Dim myLineSegment As New LineSegment()
myLineSegment.Point = New Point(200, 70)
Dim myPathSegmentCollection As New PathSegmentCollection()
myPathSegmentCollection.Add(myLineSegment)
myPathFigure.Segments = myPathSegmentCollection
Dim myPathFigureCollection As New PathFigureCollection()
myPathFigureCollection.Add(myPathFigure)
Dim myPathGeometry As New PathGeometry()
myPathGeometry.Figures = myPathFigureCollection
Dim myPath As New Path()
myPath.Stroke = Brushes.Black
myPath.StrokeThickness = 1
myPath.Data = myPathGeometry
Этот пример является частью большего примера; полный пример см. в разделе Пример геометрических объектов.
См. также
.NET Desktop feedback