Esempio n. 1
0
        private GdiRangeBar AddRangeBar(GdiRectangle chartContainer)
        {
            var barHeight = chartContainer.Size.Height - 60;
            var rangeBar  = new GdiRangeBar
            {
                Size            = new SizeF(chartContainer.Size.Width, barHeight),
                Margin          = new PointF(0, 10),
                BackgroundColor = ColorTranslator.FromHtml("#123367"),
                CenterColor     = ColorTranslator.FromHtml("#BDD2F3")
            };

            chartContainer.AddChild(rangeBar);
            return(rangeBar);
        }
Esempio n. 2
0
        private void AddRangeBarColumns(GdiRectangle chartContainer, GdiRangeBar rangeBar)
        {
            var onePercentWidth = rangeBar.Size.Width / 100; // bar is 100% width

            var columnHeight = rangeBar.Size.Height + 30;
            var columnTop    = rangeBar.Margin.Y - ((columnHeight - rangeBar.Size.Height) / 2);
            var rangeValue   = MaxValue - MinValue;

            foreach (var entry in Entries)
            {
                var x = (entry.Value - MinValue) / rangeValue * 100 * onePercentWidth;

                var column = new GdiColumn
                {
                    BackgroundColor = entry.Color,
                    Size            = new SizeF(10, columnHeight),
                    Margin          = new PointF(x - 5, columnTop)
                };
                chartContainer.AddChild(column);
            }
        }
Esempio n. 3
0
        private void AddRangeBarLabels(GdiRectangle chartContainer, GdiRangeBar rangeBar)
        {
            var margin = new PointF(0, rangeBar.Margin.Y + rangeBar.Size.Height + 15);

            if (!string.IsNullOrWhiteSpace(LeftLabel))
            {
                chartContainer.AddChild(new GdiText
                {
                    TextColor = TextColor,
                    Content   = LeftLabel,
                    Font      = Font,
                    Margin    = margin
                });
            }

            if (!string.IsNullOrWhiteSpace(CenterLabel))
            {
                chartContainer.AddChild(new GdiText
                {
                    TextColor           = TextColor,
                    Content             = CenterLabel,
                    Font                = Font,
                    HorizontalAlignment = GdiSharp.Enum.GdiHorizontalAlign.Center,
                    Margin              = margin
                });
            }

            if (!string.IsNullOrWhiteSpace(RightLabel))
            {
                chartContainer.AddChild(new GdiText
                {
                    TextColor           = TextColor,
                    Content             = RightLabel,
                    Font                = Font,
                    HorizontalAlignment = GdiSharp.Enum.GdiHorizontalAlign.Right,
                    Margin              = margin,
                    TextAlign           = StringAlignment.Far
                });
            }
        }