2

我喜欢 OxyPlot 解决方案,但我有一个问题。
有人知道如何在 WPF 中更改轴文本颜色吗?在OxyPlot.dll中有 Axis.TextColor 属性,但此属性在OxyPlot.Wpf.dll中不存在。我不知道为什么。有什么办法,我怎么能做到这一点?

来自 OxyPlots 示例浏览器的图像

编辑:
我试图更改我能够找到的每个轴颜色属性 ( TicklineColor, MajorGridlineColor, MinorGridlineColor, ExtraGridlineColor, AxislineColor, TitleColor) 没有任何运气。

EDIT2:
正如@Jamleck 想要的那样,我添加了 XAML。

<Color x:Key="MyColor">#ffffff</Color>
<Style x:Key="ResultPlotStyle" TargetType="oxy:PlotView">
    <Setter Property="Margin" Value="10" />
    <Setter Property="Background" Value="#1f1f1f" />
    <Setter Property="BorderThickness" Value="0" />
    <Setter Property="BorderBrush" Value="Transparent" />
    <Setter Property="PlotAreaBorderColor" Value="{StaticResource MyColor}" />
    <Setter Property="PlotAreaBorderThickness" Value="1 1 1 1" />
    <Setter Property="TextColor" Value="{StaticResource MyColor}" />
</Style>

<Style x:Key="ResultAxisStyle" TargetType="oxy:LinearAxis">
    <Setter Property="TicklineColor" Value="{StaticResource MyColor}" />
    <Setter Property="MajorGridlineColor" Value="{StaticResource MyColor}" />
    <Setter Property="MinorGridlineColor" Value="{StaticResource MyColor}" />
    <Setter Property="ExtraGridlineColor" Value="{StaticResource MyColor}" />
    <Setter Property="AxislineColor" Value="{StaticResource MyColor}" />
    <Setter Property="TitleColor" Value="{StaticResource MyColor}" />
    <Setter Property="TextColor" Value="{StaticResource MyColor}" />
    <Setter Property="TickStyle" Value="None" />
</Style>

<Style x:Key="ResultLeftAxisStyle" TargetType="oxy:LinearAxis" BasedOn="{StaticResource ResultAxisStyle}">
    <Setter Property="PositionAtZeroCrossing" Value="True" />
</Style>

<Style x:Key="ResultBottomAxisStyle" TargetType="oxy:LinearAxis" BasedOn="{StaticResource ResultAxisStyle}">
    <Setter Property="TickStyle" Value="Crossing" />
</Style>
4

2 回答 2

2

我遇到了同样的问题,发现与直觉相反,轴文本颜色可以由 PlotModel 对象的 TextColor 属性设置。(当然,它可能会比你的轴文本着色更多的文本 - 但我没有遇到这个问题。)

MyPlotModel = new PlotModel { };
MyPlotModel.TextColor = OxyColors.Red;
于 2017-06-01T11:12:49.953 回答
1

因此,此时此属性尚未在 OxyPlot 的 WPF 版本中实现。它阐明了为什么我无法编辑此设置。正如开发人员团队的 objo对我的问题的回答,它包含在这个问题项目中。
因此,如果我现在已经想要这个功能,我必须自己将它实现到 OxyPlot。

于 2014-07-10T11:19:07.647 回答