如何在LiveCharts中获取图表图例的实际大小?

时间:2019-11-06 10:57:30

标签: wpf livecharts

好吧,关于为什么我想知道这个的简短故事: 起初,我只想制作一个可滚动的行图,因此将其放入ScrollViewer中,但问题是,图表画布的高度始终设置为它所在的窗口的高度,并包含大量数据图表会压缩,因此您将无法再看到画布上的任何行。因此,我决定将图表的高度设置为某个常数乘以代码中的行数,然后它工作了一段时间,直到需要显示一个包含大量序列的大图表为止,所以图表的图例变得太大了,我发现了它也包含在图表控件的高度中,当我从代码中设置高度时,我没有考虑到这一点,这会导致一些意外情况。

现在,我想知道图表图例的高度,以便在计算图表高度时可以考虑到这一点。

实际上,如果您能在我的故事的任何其他阶段提供帮助,例如,也许有更简便的方法来制作可滚动图表,或者我在XAML中做错了事,我将不胜感激。

如果我犯了错误,对不起我的英语。而且我真的很讨厌英语的时态,而且我真的不知道在哪里应该使用现在完成语,大声笑。

<ScrollViewer>
    <lvc:CartesianChart Series="{Binding SeriesCollection}" Height="{Binding ChartHeight}"  Margin="0 10 10 0"
                            Zoom="X" DisableAnimations="True" LegendLocation="Top" VerticalAlignment="Top">
        <lvc:CartesianChart.DataTooltip>
            <lvc:DefaultTooltip SelectionMode="SharedYValues"></lvc:DefaultTooltip>
        </lvc:CartesianChart.DataTooltip>
        <lvc:CartesianChart.AxisX>
            <lvc:Axis Margin="0 10" Position="RightTop" RangeChangedCommand="{Binding XAxisRangeChangedCommand}" Foreground="{StaticResource DarkBrush}"/>
        </lvc:CartesianChart.AxisX>
        <lvc:CartesianChart.AxisY>
            <lvc:Axis Title="XTools" Labels="{Binding Labels}" Foreground="{StaticResource UltraDarkBrush}">
                <lvc:Axis.Separator>
                    <lvc:Separator Step="1"/>
                </lvc:Axis.Separator>
            </lvc:Axis>
        </lvc:CartesianChart.AxisY>
    </lvc:CartesianChart>
</ScrollViewer>

0 个答案:

没有答案