ArcGISPortalViewer.Popup.Primitives.Charting.ColumnChart.GenerateLabel C# (CSharp) Method

GenerateLabel() private method

private GenerateLabel ( double val, Range dataRange ) : void
val double
dataRange Range
return void
        private void GenerateLabel(double val, Range dataRange)
        {
            double fraction = dataRange.Fraction(val);

            Grid label = new Grid();
            _labels.Children.Add(label);
            label.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1 - fraction, GridUnitType.Star) });
            label.RowDefinitions.Add(new RowDefinition { Height = new GridLength(0, GridUnitType.Pixel) });
            label.RowDefinitions.Add(new RowDefinition { Height = new GridLength(fraction, GridUnitType.Star) });

            StackPanel stackPanel = new StackPanel
                                        {
                                            VerticalAlignment = VerticalAlignment.Center,
                                            HorizontalAlignment = HorizontalAlignment.Right,
                                            Orientation = Orientation.Horizontal,
                                            Margin = new Thickness(0, -20, 0, -20)
                                        };

            Grid.SetRow(stackPanel, 1);
            label.Children.Add(stackPanel);

            TextBlock text = new TextBlock
            {
                Text = FormattedValue(val)
            };
            stackPanel.Children.Add(text);

            Rectangle rect = new Rectangle { Stroke = ForegroundColor, Width = 5, Height = 1, Opacity = 0.5, Margin = new Thickness(2, 0, 0, 0) };
            stackPanel.Children.Add(rect);
        }