syncfusion wpf chart array of double - 如何与 mvvm 一起使用

syncfusion wpf chart array of double - how to use with mvvm

我有一个带有双精度数组[100] 的模型,我想直接将其用作图表的数据。索引值应为 X,该索引处的值应为图表上的 Y。

目前我必须将数组转换为点列表(在我的 ViewModel 中),我将索引值 (0-99) 存储为点的 X,并将该数组索引的值存储为 Y 值重点。

我的 xaml 看起来像这样:

<UserControl.DataContext>
        <local:ViewModel/>
    </UserControl.DataContext>
    <Grid>
        <syncfusion:SfChart>
            <chart:SfChart.PrimaryAxis>
                <chart:NumericalAxis/>
            </chart:SfChart.PrimaryAxis>
            <chart:SfChart.SecondaryAxis>
                <chart:NumericalAxis/>
            </chart:SfChart.SecondaryAxis>
            <chart:LineSeries ItemsSource="{Binding Data}" XBindingPath="X" YBindingPath="Y"/>
        </syncfusion:SfChart>
    </Grid>
</UserControl>

我无法想象这是获得结果的最佳方式...

The index value should be the X and the value at that index should be the Y on the chart.

好吧,让控件知道这一点的唯一方法是创建一个对象,其中 属性 是 returns X 值,另一个是 returns Y 值,然后将 XBindingPathYBindingPath 分别设置为它们的名称。这是 MVVM。

控件真的不应该弄清楚你想让索引代表 Y 值。