我使用StripLine在WinForms中完成了这个彩色图表。我正试图在WPF中重新实现它,但我在彩色背景上遇到了麻烦。
如何使ChartArea的背景在WPF Toolkit的图表控件中表现得像这样?
答案 0 :(得分:1)
感谢Nitesh的暗示和对wpf风格的一些研究,我已经弄明白了。
在.xaml中,我添加了一个LinearGradientBrush,以及一个使用它的Style,如下所示:
<Window.Resources>
<LinearGradientBrush x:Key="NormalBrush" EndPoint="1,0" StartPoint="0,0">
<GradientStop Color="Green" Offset="0.0"/>
<GradientStop Color="YellowGreen" Offset="{Binding OnTargetColourChange}"/>
<GradientStop Color="Yellow" Offset="{Binding OnTargetColourChange}"/>
<GradientStop Color="White" Offset="{Binding OnTargetMiddleColourChange}"/>
<GradientStop Color="Yellow" Offset="{Binding OverDryColourChange}"/>
<GradientStop Color="Orange" Offset="{Binding OverDryColourChange}"/>
<GradientStop Color="Red" Offset="1.0"/>
</LinearGradientBrush>
<Style x:Key="PlotAreaStyle" TargetType="{x:Type Grid}">
<Setter Property="Background" Value="{StaticResource NormalBrush}"/>
</Style>
</Window.Resources>
然后在宣布图表时,我使用了样式:
<chartingToolkit:Chart
Name="SimulatorChart"
PlotAreaStyle="{StaticResource PlotAreaStyle}">
最后,我只需更新DataContext中绑定的值。 (OnTargetColourChange
,OnTargetMiddleColourChange
和OverDryColourChange
)