0

自从我在我的应用程序中更新了 SciChart 以来,我一直在努力让它的外观和感觉与以前有点相似。感谢 ABT 博士,我能够摆脱格子带,但现在我面临着网格线的问题。

在以前版本的 SciChart 中,所有网格线和刻度线似乎都会自动继承应用程序上游某处样式中定义的颜色。在新版本中,线条只是黑色。所以我不得不为每个 SciChart 实例手动覆盖 MajorGridLineStyle、MajorTickLineStyle、MinorGridLineStyle 和 MinorTickLineStyle。但是有一个实例是有问题的,因为应用程序逻辑需要从代码中添加 Y 轴。因此,我无法在 xaml 中设置其网格线的样式。

我试图在代码中添加样式:

_yAxis = new NumericAxis()
                {
                    ...
                    DrawMajorBands = false,
                    MajorGridLineStyle = MajorLineStyle,
                    MinorGridLineStyle = MinorLineStyle
                };

结果是不仅没有显示网格线,而且实际数据系列从图表中消失(以及一些线注释),并且显示的只是 X 轴及其网格线。我已经做了一些实验,并且我已经验证是添加导致问题的样式的代码。我使用的样式类似于我在 xaml 中定义的样式(它们工作正常)

MajorLineStyle = new Style(typeof(Line));
MajorLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.Pink));            
MajorLineStyle.Setters.Add(new Setter(Line.StrokeThicknessProperty, 1));
MajorLineStyle.Setters.Add(new Setter(Line.OpacityProperty, 0.6));

这是 SciChart 中的错误,还是我做错了什么?有没有办法为 xaml 中以编程方式定义的轴添加样式?有没有办法覆盖 SciChartSurface 级别的线条颜色,所以我不必为每种类型的线条单独做?

4

0 回答 0