private void DrawLines(DataCollectionBindingSource dcbs, DataCollectionControl dc) { var group = (TransformGroup)(dc.RenderTransform); var trans = (ScaleTransform)group.Children[0]; int i = 0; foreach (var p in dcbs.Points) { ++i; Line l = new Line() { X1 = (dcbs.Center.X), Y1 = dcbs.Center.Y - (dc.ActualHeight / 2) * trans.ScaleX, X2 = p.X, Y2 = p.Y, Stroke = dc.Tag.ToString() == "counter" ? Brushes.Gold : i == 1 ? Brushes.Red : Brushes.Green, StrokeThickness = 0.5 * trans.ScaleX, }; Panel.SetZIndex(l, 150); lines.Add(l); cnvModel.Children.Add(l); } }
private static void AddTrTimesToCanvas(TransformGroup group, Canvas canvas, DataCollectionBindingSource item) { var dc = new DataCollectionControl() { DataContext = item, RenderTransform = group, Tag = "tr.times" }; Panel.SetZIndex(dc, measurementLevel); canvas.Children.Add(dc); Canvas.SetLeft(dc, item.Center.X); Canvas.SetTop(dc, item.Center.Y); }