如何绘制多边形?(在 C# WPF 项目中)

本文关键字:WPF 项目 多边形 何绘制 绘制 | 更新日期: 2023-09-27 18:34:22

单击点,我想从图像上的多边形区域制作。

myPolygon = new Polygon();
myPolygon.Stroke = Brushes.Black; 
myPolygon.Fill = Brushes.LightYellow; 
myPolygon.StrokeThickness = 2; 
myPolygon.HorizontalAlignment = HorizontalAlignment.Left; 
myPolygon.VerticalAlignment = VerticalAlignment.Center; 
myPolygon.PreviewMouseLeftButtonDown += new MouseButtonEventHandler(Polygon_MouseDown); 
myPolygon.PreviewMouseLeftButtonUp += new MouseButtonEventHandler(Polygon_MouseUp);     
private void Polygon_MouseDown(object sender, MouseButtonEventArgs e) 
{     
    Point p = e.GetPosition(image); 
    myPolygon.Points = new PointCollection() { new Point(p.X,p.Y) };
    RootCanvas.Children.Add(myPolygon); 
} //MouseClick Event BUT, did not click behavior.. I want draw a line along the points.

我该怎么做...?

如何绘制多边形?(在 C# WPF 项目中)

我们可以使用 WPF 画布绘制多边形,它是子对象的集合。

Polygon p = new Polygon();
p.Stroke = Brushes.Black;
p.Fill = Brushes.LightBlue;
p.StrokeThickness = 1;
p.HorizontalAlignment = HorizontalAlignment.Left;
p.VerticalAlignment = VerticalAlignment.Center;
p.Points = new PointCollection() { new Point(10, 10), new Point(100, 100), new Point(200, 200) };
freeCanvas.Children.Add(p);

有关更多信息,请参阅以下网址

http://www.codeproject.com/Articles/128705/WPF-rounded-corners-polygon

http://classicalprogrammer.wikidot.com/draw-dynamic-polygons-in-wpf

http://msdn.microsoft.com/en-us/library/ms747393.aspx