Xamarin.Forms Şekiller: Çok Çizgili

Polyline sınıfı sınıfından Shape türetilir ve bir dizi bağlı düz çizgi çizmek için kullanılabilir. Çok çizgi, çokgene benzer, ancak bir poliline'deki son nokta ilk noktaya bağlı değildir. Sınıfın sınıftan devraldığı Shape özellikler hakkında bilgi için bkzXamarin.Forms. Şekiller.Polyline

Polyline aşağıdaki özellikleri tanımlar:

  • Points, türündeki PointCollection, çok çizginin Point köşe noktalarını açıklayan bir yapı koleksiyonudur.
  • FillRule, türüne FillRulegöre çok çizgili kesişen alanların nasıl birleştirildiğine ilişkin bir ifadedir. Bu özelliğin varsayılan değeridir FillRule.EvenOdd.

Bu özellikler nesneler tarafından BindableProperty desteklenir; bu da veri bağlamalarının hedefleri olabileceği ve stillendirilebileceği anlamına gelir.

Türü PointsCollection bir ObservableCollection nesnedir Point . YapısıPoint, 2B alanda x ve Y y koordinat çiftini temsil eden ve türünde doubleözellikleri tanımlarX. Bu nedenle özelliği, Points tek bir virgül ve/veya bir veya daha fazla boşlukla sınırlandırılmış, çok çizgili köşe noktalarını tanımlayan x koordinatı ve y koordinat çiftleri listesine ayarlanmalıdır. Örneğin, "40,10 70,80" ve "40 10, 70 80" geçerli olur.

Numaralandırma hakkında FillRule daha fazla bilgi için bkz Xamarin.Forms . Şekiller: Doldurma kuralları.

Çok Çizgi oluşturma

Çok çizgi çizmek için bir Polyline nesne oluşturun ve özelliğini şeklin köşelerine ayarlayın Points . Çok çizgiye bir ana hat vermek için özelliğini türetilmiş bir Brushnesne olarak ayarlayınStroke. özelliği, StrokeThickness çok çizgili ana hattın kalınlığını belirtir. Nesneler hakkında Brush daha fazla bilgi için bkz Xamarin.Forms . Fırçalar.

Önemli

öğesinin Fill Polyline özelliğini türetilmiş bir Brushnesne olarak ayarlarsanız, başlangıç noktası ve bitiş noktası kesişmese bile çok çizginin iç alanı boyanmış olur.

Aşağıdaki XAML örneği, çok çizgi çizmeyi gösterir:

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

Bu örnekte kırmızı bir çok çizgi çizilmiştir:

Çoklu çizgi

Aşağıdaki XAML örneği kesikli çok çizgili çizmeyi gösterir:

<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" />

Bu örnekte, çok çizgili kesikli:

Kesikli çok çizgili

Kesikli çok çizgi çizme hakkında daha fazla bilgi için bkz . Kesikli şekiller çizme.

Aşağıdaki XAML örneği, varsayılan doldurma kuralını kullanan bir çok çizgi gösterir:

<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" />

Bu örnekte, çok çizgili doldurma davranışı, doldurma kuralı kullanılarak EvenOdd belirlenir.

EvenOdd çok çizgili

Aşağıdaki XAML örneği, doldurma kuralını kullanan Nonzero bir çok çizgi gösterir:

<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" />

Sıfır olmayan çok çizgili

Bu örnekte, çok çizgili doldurma davranışı, doldurma kuralı kullanılarak Nonzero belirlenir.