public static void DrawGridLines( this Canvas Canvas1, double Spacing, string Tag = null) { var lineChar = new LineCharacteristics() { StrokeThickness = 1, }; // draw horizontal grid lines. double ht = Canvas1.ActualHeight; for (var ix = 0.0; ix < Canvas1.ActualHeight; ix = ix + Spacing) { var start = new Point(0, ix); var coor = new LineCoordinates(start, new Point(Canvas1.ActualWidth, ix)); var line = Canvas1.DrawLine(coor, lineChar); if (Tag != null) { line.Tag = Tag; } } // draw vertical grid lines. for (var ix = 0.0; ix < Canvas1.ActualWidth; ix += Spacing) { var start = new Point(ix, 0); var coor = new VerticalLineCoordinates(start, Canvas1.ActualHeight); var line = Canvas1.DrawLine(coor, lineChar); if (Tag != null) { line.Tag = Tag; } } }
public static Line DrawLine(this Canvas InCanvas, LineCoordinates LineCoor, LineCharacteristics LineChar) { Line newLine = new Line(); newLine.Stroke = LineChar.Stroke; newLine.Fill = LineChar.Fill; newLine.StrokeLineJoin = LineChar.StrokeLineJoin; newLine.X1 = LineCoor.Start.X; newLine.Y1 = LineCoor.Start.Y; newLine.X2 = LineCoor.End.X; newLine.Y2 = LineCoor.End.Y; newLine.StrokeThickness = LineChar.StrokeThickness; InCanvas.Children.Add(newLine); return(newLine); }