Я до сих пор не понимаю, какое свойство должно быть изменено для изменения фона граф области?

мышляю над графиками MS Toolkit и не могу понять, как изменить цвет областей. Мне нужно заполнить диаграмму динамически, что означает, что я не знаю заранее, сколько разделов будет иметь диаграмма площади.

Вот код, который у меня есть.

var a = new AreaSeries
{
  Title = "a",
  IndependentValuePath = "Key",
  DependentValuePath = "Value",
  Background = Brushes.Plum
};

Я пытался изменить как передний план, так и фон, а не кости.

mcChart.Series.Add(a);

a = new AreaSeries
{
  Title = "b",
  IndependentValuePath = "Key",
  DependentValuePath = "Value",
  Background = Brushes.Peru
};

mcChart.Series.Add(a);

Заполните таблицу.

((AreaSeries)mcChart.Series[0]).ItemsSource = new[]
{
  new KeyValuePair<string, int>("1", 100),
  new KeyValuePair<string, int>("2", 180),
  new KeyValuePair<string, int>("3", 110),
  new KeyValuePair<string, int>("4", 95),
  new KeyValuePair<string, int>("5", 40),
  new KeyValuePair<string, int>("6", 95)
};

((AreaSeries)mcChart.Series[1]).ItemsSource = new[]
{
  new KeyValuePair<string, int>("1", 150),
  new KeyValuePair<string, int>("2", 280),
  new KeyValuePair<string, int>("3", 310),
  new KeyValuePair<string, int>("4", 195),
  new KeyValuePair<string, int>("5", 340),
  new KeyValuePair<string, int>("6", 195)
};

Я новичок в wpf и не могу понять, что с этим не так.

Вот XAML

<chartingToolkit:Chart 
  Width="600" Height="450"
  Name="mcChart" 
  Background="LightBlue"
  Foreground="DarkBlue"
  Title="Area Chart">                
</chartingToolkit:Chart>

Как мне изменить цвет области а и области б. Прямо сейчас они имеют любой цвет по умолчанию, хотя я установил фон и передний план.

Благодарю.

Ответы на вопрос(1)

Решение Вопроса

Вы можете использоватьChart.Palette свойство как это:

<Grid>
    <charting:Chart>
        <charting:Chart.Palette>
            <visualizationToolkit:ResourceDictionaryCollection>
                <ResourceDictionary>
                    <Style x:Key="DataPointStyle" TargetType="Control">
                        <Setter Property="Background" Value="MistyRose"/>
                    </Style>
                </ResourceDictionary>
                <ResourceDictionary>
                    <Style x:Key="DataPointStyle" TargetType="Control">
                        <Setter Property="Background" Value="AliceBlue"/>
                    </Style>
                </ResourceDictionary>
            </visualizationToolkit:ResourceDictionaryCollection>
        </charting:Chart.Palette>
        <charting:AreaSeries Title="Series 1"/>
        <charting:AreaSeries Title="Series 2"/>
    </charting:Chart>
</Grid>
Вот это еще немного информации.
 Rick Sladkey13 янв. 2011 г., 08:20
Палитра может быть сколь угодно длинной. То есть ему не нужно совпадать с количеством столбцов. Если вам не нужно выбирать цвета во время выполнения, вы можете создать одну палитру в XAML и использовать ее в коде. Если вам нужно изменить цвета в коде, просто создайте его, например, `новый ResourceDictionaryCollection () 'и т. д.
 nitefrog13 янв. 2011 г., 08:09
Спасибо за ссылку, но как вы делаете это с помощью кода? Я не буду знать, сколько серий у меня есть, пока я не вытащу данные из БД. Я должен сделать это динамически. Есть идеи? Еще раз спасибо
 mithun25 июн. 2015 г., 08:25
Я до сих пор не понимаю, какое свойство должно быть изменено для изменения фона граф области?

Ваш ответ на вопрос