private void drawVerticalLine(int lindex, DrawingContext dc) { int biTag = lindex * 20; int eiTag = lindex * 20 + 19; CSwitcher btn1 = findButonWith_iTag(biTag); CSwitcher btn2 = findButonWith_iTag(eiTag); Pen linePen = new Pen(Brushes.Gray, 1); if (btn1 != null && btn2 != null) { Point btnPt1 = btn1.TransformToAncestor(this).Transform(new Point(0, 0)); Point btnPt2 = btn2.TransformToAncestor(this).Transform(new Point(0, 0)); Point pt1 = btnPt1; Point pt2 = btnPt2; pt1.X += btn1.ActualWidth / 2; pt2.X = pt1.X; pt1.Y = 62; pt1.Y += btn1.ActualHeight / 2; pt2.Y += btn2.ActualHeight / 2; dc.DrawLine(linePen, pt1, pt2); Rect tmpRect = new Rect(pt1.X - 12, 5, 24, 65); dc.DrawRectangle(null, linePen, tmpRect); } }
/// <summary> /// drawHorizontal /// </summary> /// <param name="lindex"></param> /// <param name="dc"></param> private void drawHorLine(int lindex, DrawingContext dc) { int biTag = lindex; int eiTag = lindex + 380; CSwitcher btn1 = findButonWith_iTag(biTag); CSwitcher btn2 = findButonWith_iTag(eiTag); if (btn1 != null && btn2 != null) { Point btnPt1 = btn1.TransformToAncestor(this).Transform(new Point(0, 0)); Point btnPt2 = btn2.TransformToAncestor(this).Transform(new Point(0, 0)); Point pt1 = btnPt1; Point pt2 = btnPt2; pt1.X -= 85.5; pt1.Y += btn1.ActualHeight / 2; pt2.Y += btn2.ActualHeight / 2; if (lindex % 2 == 0) { dc.DrawLine(new Pen(Brushes.Purple, 1), pt1, pt2); } else { dc.DrawLine(new Pen(Brushes.Gray, 1), pt1, pt2); } } }