Freigeben über


Xamarin.Forms Formen: Polylinie

Die Polyline Klasse wird von der Shape Klasse abgeleitet und kann verwendet werden, um eine Reihe verbundener gerader Linien zu zeichnen. Eine Polylinie ähnelt einem Polygon und unterscheidet sich nur dadurch, dass der letzte Punkt in einer Polylinie nicht mit dem ersten Punkt verbunden ist. Informationen zu den Eigenschaften, die die Polyline Klasse von der Shape Klasse erbt, finden Sie unter Xamarin.Forms Shapes.

Polyline definiert die folgenden Eigenschaften:

  • Points, vom TypPointCollection, ist eine Sammlung von Point-Strukturen, die die Scheitelpunkte der Polylinie beschreiben.
  • FillRule, vom Typ FillRule, gibt an, wie die sich überschneidenden Bereiche in der Polylinie kombiniert werden. Der Standardwert dieser Eigenschaft ist FillRule.EvenOdd.

Diese Eigenschaften werden von BindableProperty-Objekten unterstützt, was bedeutet, dass sie Ziele von Datenbindungen sein können und formatiert werden können.

Der PointsCollection-Typ ist eine ObservableCollection des Point-Objekts. Die Point-Struktur definiert die Eigenschaften X und Y vom Typ double, die ein X- und Y-Koordinatenpaar im 2D-Raum darstellen. Daher sollte die Points-Eigenschaft auf eine Liste der X- und Y-Koordinatenpaare festgelegt werden, die die Scheitelpunkte der Polylinie beschreiben. Getrennt werden die entsprechenden Werte durch ein einzelnes Komma und/oder durch ein oder mehrere Leerzeichen. Beispielsweise sind sowohl „40,10 70,80“ als auch „40 10, 70 80“ gültig.

Weitere Informationen zur FillRule Enumeration finden Sie unter Xamarin.Forms Shapes: Füllregeln.

Erstellen einer Polylinie

Um eine Polylinie zu zeichnen, erstellen Sie ein Polyline-Objekt, und legen Sie die zugehörige Points-Eigenschaft auf die Scheitelpunkte einer Form fest. Damit die Polylinie eine Kontur erhält, legen Sie die Stroke-Eigenschaft auf ein Brush-abgeleitetes Objekt fest. Die StrokeThickness-Eigenschaft gibt die Stärke der Polylinienkontur an. Weitere Informationen zu Brush Objekten finden Sie unter Xamarin.Forms Pinsel.

Wichtig

Wenn Sie die Fill-Eigenschaft einer Polyline auf ein Brush-abgeleitetes Objekt festlegen, wird der Innenbereich der Polylinie gezeichnet, auch wenn sich Start- und Endpunkt nicht schneiden.

Das folgende XAML-Beispiel zeigt, wie eine Polylinie gezeichnet wird:

<Polyline Points="0,0 10,30, 15,0 18,60 23,30 35,30 40,0 43,60 48,30 100,30"
          Stroke="Red" />

Dieses Beispiel zeigt eine rote Polylinie:

Polylinie

Das folgende XAML-Beispiel zeigt, wie eine gestrichelte Polylinie gezeichnet wird:

<Polyline Points="0,0 10,30, 15,0 18,60 23,30 35,30 40,0 43,60 48,30 100,30"
          Stroke="Red"
          StrokeThickness="2"
          StrokeDashArray="1,1"
          StrokeDashOffset="6" />

Dieses Beispiel zeigt eine gestrichelte Polylinie:

Gestrichelte Polylinie

Weitere Informationen zum Zeichnen einer gestrichelten Polylinie finden Sie unter Zeichnen gestrichelter Formen.

Das folgende XAML-Beispiel zeigt eine Polylinie, die die Standardfüllregel verwendet:

<Polyline Points="0 48, 0 144, 96 150, 100 0, 192 0, 192 96, 50 96, 48 192, 150 200 144 48"
          Fill="Blue"
          Stroke="Red"
          StrokeThickness="3" />

In diesem Beispiel wird das Füllverhalten der Polylinie mithilfe der EvenOdd-Füllregel bestimmt.

EvenOdd-Polylinie

Das folgende XAML-Beispiel zeigt eine Polylinie, die die Nonzero-Füllregel verwendet:

<Polyline Points="0 48, 0 144, 96 150, 100 0, 192 0, 192 96, 50 96, 48 192, 150 200 144 48"
          Fill="Black"
          FillRule="Nonzero"
          Stroke="Yellow"
          StrokeThickness="3" />

Nonzero-Polylinie

In diesem Beispiel wird das Füllverhalten der Polylinie mithilfe der Nonzero-Füllregel bestimmt.