Найти цвет, назначенный точке в круговой диаграмме ASP.NET при использовании палитр

У меня есть базовый элемент управления ASP.NET Charting, представляющий собой круговую диаграмму с использованием палитры "Яркая пастель", и я хотел бы связать цвета, используемые в диаграмме, с сеткой в ​​другом месте на странице (которая фактически действует как легенда, но у меня будет еще несколько полей, как только у меня получится).

Я не могу найти нигде в элементе управления, где он ссылается на фактические цвета, используемые в каждом разделе пирога, все свойства BackgroundColor равны 0. Я мог бы вручную назначить цвета, но это действительно усложнит вещи, если мне придется сделать тот.

Скриншот, если он помогает визуализировать то, что я пытаюсь сделать:

1 ответ

Решение

После того, как вы установили свою серию, вы можете вызвать метод chart1.ApplyPaletteColors() и затем проверить свойство series[].Color, чтобы определить цвет.

chart1.Series.Clear();
chart1.Series.Add(new Series());
chart1.Series.Add(new Series());

Color series1Color = chart1.Series[0].Color;  
// Above (Series 1) currently holds {Color [Empty]} || {Name=0, ARGB={0,0,0,0}}
Color series2Color = chart1.Series[1].Color;  
// Above (Series 2) currently holds {Color [Empty]} || {Name=0, ARGB={0,0,0,0}}

chart1.ApplyPaletteColors();

Color series1AfterColor = chart1.Series[0].Color; 
// Above (Series 1) now holds {Color [A=255, R=65, G=140, B=240]}

Color series2AfterColor = chart1.Series[1].Color; 
// Above (Series 2) now holds {Color [A=255, R=252, G=180, B=65]}

Эти цвета будут варьироваться в зависимости от выбранной вами цветовой палитры.

Чтобы увидеть, какие цветовые палитры вы можете установить, вы можете посмотреть блог Алекса Горева.

Из блога Алекса http://blogs.msdn.com/blogfiles/alexgor/WindowsLiveWriter/SettingChartSeriesColors_7C0/ChartPalettes_thumb.png Источник - блог Алекса

У него есть очень полезные сообщения о графике.NET, и я часто обращался к его блогу, обычно от поиска ответов на вопросы графика в Google http://blogs.msdn.com/b/alexgor/

Дайте мне знать, если это не ответит на ваш вопрос достаточно, чтобы выполнить вашу задачу, и я подробно остановлюсь на любой области, которую вы спрашиваете, на которую я способен.

Другие вопросы по тегам