2015-07-24 5 views
0

J'utilise le contrôle du diagramme de zone WPF Toolkit. Je ne suis pas en mesure de changer l'arrière-plan de la série de zone à une autre couleur. Il attribue juste le code couleur # FFFFA500.Impossible de modifier l'arrière-plan de la WPF Toolkit Area Series

Mon code XAML est comme ci-dessous

  <chartingToolkit:Chart.Palette x:Uid="tt"> 
       <datavis:ResourceDictionaryCollection> 
        <ResourceDictionary> 
         <Style x:Key="DataPointStyle" TargetType="Control"> 
          <Setter Property="Background" Value="#FF3EA0C0"/> 
         </Style> 
        </ResourceDictionary> 
        <ResourceDictionary> 
         <Style x:Key="DataPointStyle" TargetType="Control"> 
          <Setter Property="Background" Value="#FF44C8F5"/> 
         </Style> 
        </ResourceDictionary> 
       </datavis:ResourceDictionaryCollection> 
      </chartingToolkit:Chart.Palette> 

      <chartingToolkit:Chart.LegendStyle> 
       <Style TargetType="Control"> 
        <Setter Property="Width" Value="0"/> 
        <Setter Property="Height" Value="0"/> 
       </Style> 
      </chartingToolkit:Chart.LegendStyle> 

      <chartingToolkit:AreaSeries Background="Black" x:Name="SecondSeries" DependentValuePath="Value" IndependentValuePath="Key" IsSelectionEnabled="True"> 

       <chartingToolkit:AreaSeries.DataPointStyle> 
        <Style TargetType="chartingToolkit:AreaDataPoint"> 

         <Setter Property="IsTabStop" Value="False" /> 
         <Setter Property="Width" Value="Auto" /> 
         <Setter Property="Height" Value="30" />                                   
         <Setter Property="Template"> 
          <Setter.Value> 
           <ControlTemplate TargetType="chartingToolkit:AreaDataPoint"> 
            <Button Name="pointButton" Content="{Binding}" Click="pointButton_Click_1" BorderThickness="1" > 
             <Button.Template> 
              <ControlTemplate> 
               <StackPanel> 

                <TextBlock Text="{Binding Path=Value}" Cursor="Hand"></TextBlock> 

               </StackPanel> 
              </ControlTemplate> 
             </Button.Template> 
            </Button> 

           </ControlTemplate> 
          </Setter.Value> 
         </Setter> 
        </Style> 
       </chartingToolkit:AreaSeries.DataPointStyle> 
       <chartingToolkit:AreaSeries.DependentRangeAxis> 
        <chartingToolkit:LinearAxis Orientation="Y" FontFamily="Rockwell" Title="Expenses" FontSize="14" > 

        </chartingToolkit:LinearAxis> 
       </chartingToolkit:AreaSeries.DependentRangeAxis> 
      </chartingToolkit:AreaSeries> 
     </chartingToolkit:Chart> 

S'il vous plaît, aidez-moi. Ça me rend fou.

+0

de contrôle graphique possible double de [WPF zone de graphique avec des couleurs différentes? ] (http://stackoverflow.com/questions/4676807/wpf-area-chart-with-different-colors) –

Répondre

0

Le problème est qu'il existe un Grid dans le modèle de contrôle AreaSeries qui a un style appliqué pour définir l'arrière-plan à LinearGradientBrush.

Pour changer l'arrière-plan de la zone de la parcelle, ajoutez ce style

<Style TargetType="Grid" x:Key="plotStyle"> 
    <Setter Property="Background"> 
     <Setter.Value> 
      <SolidColorBrush Color="Pink"/> 
     </Setter.Value> 
    </Setter> 
</Style> 

et l'utiliser comme PlotAreaStyle

<chartingToolkit:Chart Background="Black" PlotAreaStyle="{StaticResource plotStyle}">