Example #1
0
        private void Body_LayoutUpdated(object sender, EventArgs e)
        {
            Point vl2 = OutAnchorL.TransformToVisual(OutLayout).Transform(new Point());
            Point vr2 = OutAnchorR.TransformToVisual(OutLayout).Transform(new Point());

            VerticalL.X1   = VerticalL.X2 = 0;
            VerticalL.Y2   = vl2.Y;
            VerticalR.X1   = VerticalR.X2 = Body.ActualWidth;
            VerticalR.Y2   = vr2.Y;
            HorizentalL.X1 = 0;
            HorizentalR.X2 = VerticalR.X1;
        }
Example #2
0
 private void Placer_LayoutUpdated(object sender, EventArgs e)
 {
     if (_state == ElementState.Open)
     {
         Point left  = OutAnchorL.TransformToVisual(Layout).Transform(new Point());
         Point right = OutAnchorR.TransformToVisual(Layout).Transform(new Point());
         for (int i = 0; i < Placer.Children.Count; i++)
         {
             UIElement ue = Placer.Children[i];
             if (ue is IElement)
             {
                 IElement element = ue as IElement;
                 Point    lp      = element.LeftAnchor.TransformToVisual(Layout).Transform(new Point());
                 Point    rp      = element.RightAnchor.TransformToVisual(Layout).Transform(new Point());
                 LinkLine lline   = Lines.Children[i * 2] as LinkLine;
                 LinkLine rline   = Lines.Children[i * 2 + 1] as LinkLine;
                 lline.SetPosition(left.X + OutAnchorL.Width, left.Y, lp.X + (element.LeftAnchor as Rectangle).Width, lp.Y, left.X + OutAnchorL.Width + 10);
                 rline.SetPosition(rp.X, rp.Y, right.X, right.Y, right.X - 10);
             }
         }
     }
 }