Ejemplo n.º 1
0
        protected override void InternalDraw(DrawingContext dc)
        {
            // y
            double viewportTop;

            if (Element.SelectedBlockInvisible(out viewportTop))
            {
                return;
            }

            // size
            var blockConverter = Element.BlockConverter;
            var thickness      = Element.SelectedBorder.Thickness / 2;
            var height         = blockConverter.GetHeight(Element.SelectedBlock) - thickness;

            // x
            var top = blockConverter.GetTop(Element.SelectedBlock);

            var rect = Element.SelectedBlock.ToRect(Element.AxisXConverter, top, height);

            dc.PushTransform(new TranslateTransform(0, viewportTop));

            dc.DrawGuidelineRect(Element.SelectedBrush, Element.SelectedBorder, rect);

            dc.Pop();

            base.InternalDraw(dc);
        }
Ejemplo n.º 2
0
        protected override void InternalDraw(DrawingContext dc)
        {
            if (Element.InvalidPlacement)
            {
                return;
            }

            if (_pen == null)
            {
                _pen = Element.GetDashPen(Brushes.Gray);
            }

            var axisXConverter = Element.AxisXConverter;
            var blockConverter = Element.BlockConverter;
            var selectedBlock  = Element.PointOutBlock;

            var top         = Element.GetPointOutY();
            var blockHeight = blockConverter.GetHeight(selectedBlock) - 0.5; // 1 = border thickness;
            var left        = axisXConverter.DataToScreen(Element.DropedPlacement.Start);
            var right       = axisXConverter.DataToScreen(Element.DropedPlacement.End);


            var rect = new Rect(left < right ? left : right, top, Math.Abs(right - left), blockHeight);


            dc.DrawGuidelineRect(null, _pen, rect);
        }
Ejemplo n.º 3
0
        protected override void InternalDraw(DrawingContext dc)
        {
            var axisXConverter = Element.AxisXConverter;
            var blockConverter = Element.BlockConverter;

            if (_pen == null)
            {
                _pen = Element.GetDashPen(Brushes.Gray);
            }

            if (!Element.AxisYConverter.IsInViewRagne(Element.PointOutDataRowIndex))
            {
                return;
            }

            var height = blockConverter.GetHeight(Element.PointOutBlock) - 0.5; // 0.5 = 1 border thickness / 2 ;

            var blockLeft  = axisXConverter.DataToScreen(Element.DropedPlacement.Start);
            var blockRight = axisXConverter.DataToScreen(Element.DropedPlacement.End);

            dc.DrawGuidelineRect(null, _pen, new Rect(blockLeft, Element.GetPointOutY(), blockRight - blockLeft, height));

            base.InternalDraw(dc);
        }