我想避免使用 Axis 中的十进制数,我该怎么做?

XAML:

 <Charting:Chart   VerticalAlignment="Stretch"
                HorizontalContentAlignment="Stretch">

        <Charting:Chart.Axes>
            <Charting:LinearAxis  Orientation="Y" Minimum="0" Title="" Location="Left"
                    />
        </Charting:Chart.Axes>

        <Charting:Chart.Series>

            <Charting:ColumnSeries ItemsSource="{Binding Persons}"
                        DependentValueBinding="{Binding Count}"
                        IndependentValueBinding="{Binding Category}">
            </Charting:ColumnSeries>
        </Charting:Chart.Series>
    </Charting:Chart>

最佳答案

如果您仍在为此苦苦挣扎,或者其他人对此感兴趣:
解决方案几乎就是 baalazamon 所写的。只是 {0:0.##} 将显示两个十进制数字(如果它们存在)(这就是“.##”的意思)。所以你应该写的是

<Style x:Key="EmptyStyle" TargetType="charting:NumericAxisLabel">
    <Setter Property="IsTabStop" Value="False" />
    <Setter Property="StringFormat" Value="{0:0}" />
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="charting:NumericAxisLabel">
                <TextBlock />
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

当然,您需要添加以下内容:
<charting:LineSeries.DependentRangeAxis>
        <charting:LinearAxis AxisLabelStyle="{StaticResource EmptyStyle}"
            Orientation="Y"
            ShowGridLines="True"/>
</charting:LineSeries.DependentRangeAxis>

我希望这能解决你的问题。

关于wpf - 没有十进制数的 LinearAxis,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4791639/

10-16 22:12