C#绘制多条线
发布时间:2020-12-15 23:25:26 所属栏目:百科 来源:网络整理
导读:我使用此代码绘制了多行,但我觉得有更好的方法可以做到这一点. 例如.通过使用多维数组?还是清单? private void drawLines() { int[] x1 = { 0,112,222,333,1}; int[] x2 = { 334,334,1 }; int[] y1 = { 100,200,300,1,300 }; int[] y2 = { 100,0 }; for (i
我使用此代码绘制了多行,但我觉得有更好的方法可以做到这一点.
例如.通过使用多维数组?还是清单? private void drawLines() { int[] x1 = { 0,112,222,333,1}; int[] x2 = { 334,334,1 }; int[] y1 = { 100,200,300,1,300 }; int[] y2 = { 100,0 }; for (int i = 0; i < x1.Length; i++) { Line line = new Line(); Grid myGrid = gg; line.Stroke = Brushes.Black; line.X1 = x1[i]; line.X2 = x2[i]; line.Y1 = y1[i]; line.Y2 = y2[i]; line.StrokeThickness = 2; myGrid.Children.Add(line); } } 解决方法
我将在struct Point中创建一个具有该行的起点和终点的Line类,并创建该类的列表而不是具有四个数组.
public class MyLine { public Point StartPoint {get; set;} public Point EndPoint {get; set;} public void DrawLine() { //Draw line code goes here } } 现在你有了带有必填字段和方法的线类来绘制线条.您可能在其他类中的drawLines方法将创建MyLine类的列表,并可以使用Line类方法DrawLine绘制该行列表 private void DrawLines() { List<MyLine> listMyLines = new List<MyLine>(); listMyLines.Add(new MyLine{StartPoint = new Point(0,100),EndPoint = new Point(334,100)}); for (int i = 0; i < listMyLines.Count; i++) { listMyLines[i].DrawLine(); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |