我使用Jim McCurdy对此StackOverflow question非常有帮助的答案,以避免在包含多个系列的WPF工具包图表中绘制数据点。
但是:如果我不应用Jim的XAML样式,所有图表线都会获得不同的颜色(当然是以显示的数据点为代价),但是当我应用“无数据点”样式时,线条颜色是恒定的,导致图表中的所有线条具有相同的颜色。
是否可以扩展XAML样式,以使图表中每个新行系列的线条颜色自动不同?
如果我正确地解释了这个StackOverflow question的答案,那么这个问题很容易通过编程方式解决,但如果可能的话,我会更喜欢基于XAML的解决方案。
答案 0 :(得分:4)
要在XAML中解决此问题,一种方法是为要分配给LineSeries的每种颜色创建不同的DataPoint样式。例如,我只是这样做了:
<Style x:Key="InvisibleDataPointBlue" TargetType="{x:Type charting:DataPoint}">
<Setter Property="Background" Value="Blue"/>
<Setter Property="Template" Value="{x:Null}"/>
</Style>
<Style x:Key="InvisibleDataPointRed" TargetType="{x:Type charting:DataPoint}">
<Setter Property="Background" Value="Red"/>
<Setter Property="Template" Value="{x:Null}"/>
</Style>
<Style x:Key="InvisibleDataPointGreen" TargetType="{x:Type charting:DataPoint}">
<Setter Property="Background" Value="Green"/>
<Setter Property="Template" Value="{x:Null}"/>
</Style>
可能有更好的方式来动态分配新颜色,但如果您的需求适中,则可以这样做。