Элемент управления диаграммой Microsoft не может установить прозрачный фон - PullRequest
1 голос
/ 20 октября 2011

У меня есть элемент управления круговой диаграммы Microsoft. Я устанавливаю прозрачный фон, но он остается белым. Как вы можете видеть, я установил свойства BackColor и PageColor для BorderSkin. Я также установил BackColor ChartArea. Вот код

Chart chart = new Chart
            {
                Width = 190,
                Height = 159,
                RenderType = RenderType.BinaryStreaming,
                AntiAliasing = AntiAliasingStyles.Graphics,
                TextAntiAliasingQuality = TextAntiAliasingQuality.Normal
            };

            // turn on transparency
            chart.BorderSkin.BackColor = Color.Transparent;
            chart.BorderSkin.PageColor = Color.Transparent;
            chart.BorderSkin.SkinStyle = BorderSkinStyle.Emboss;

            chart.ChartAreas.Add("");

            chart.ChartAreas[0].AxisX.Interval = 1; // setting this to 1 forces all items to show
            chart.ChartAreas[0].AxisX.LabelStyle.Enabled = true;
            chart.ChartAreas[0].AxisX.TitleFont = xLabelFont;
            chart.ChartAreas[0].AxisX.MajorGrid.Enabled = false;

            chart.ChartAreas[0].AxisY.TitleFont = yLabelFont;
            chart.ChartAreas[0].AxisY.LabelStyle.IsStaggered = false; // staggers axis label
            chart.ChartAreas[0].AxisY.TextOrientation = TextOrientation.Horizontal;
            chart.ChartAreas[0].AxisY.MajorGrid.Enabled = false;
            chart.ChartAreas[0].AlignmentOrientation = AreaAlignmentOrientations.All;

            chart.ChartAreas[0].BackColor = Color.Transparent;
            chart.Series.Add("");
            chart.Series[0].ChartType = SeriesChartType.Pie;
            //chart.Series[0]["PieLabelStyle"] = "Disabled"; // disable labels
            chart.Series[0].IsValueShownAsLabel = true; // *** super important to be able to manually set labels show point labels for value ***

            chart.ChartAreas[0].Area3DStyle.Enable3D = true;

Ответы [ 3 ]

1 голос
/ 27 февраля 2015

Цвета диаграммы, области (областей), легенды и т. Д. Устанавливаются отдельно.И не забудьте добавить:

chart.TextAntiAliasingQuality = TextAntiAliasingQuality.SystemDefault;

, когда вы установите прозрачный фон графика, или вы получите ужасные шрифты низкого качества.

1 голос
/ 26 сентября 2016

Мне были нужны эти две строки:

chart.BackColor = Color.Transparent;
chart.ChartAreas[0].BackColor = Color.Transparent;
1 голос
/ 20 октября 2011

Я не вижу этой строки:

chart.BackColor = Color.Transparent;
...