询问者
关于WPFToolkit绘制折线图连点顺序问题

问题
-
我正在使用WPFToolkit绘制折线图,我将一些固定的点按顺序放到集合中,然后将集合绑定到前台LineSeries的ItemsSource上,但是绘制出来的线并不是按照我添加点的顺序绘制的,而且我发现每次绘制顺序都不一样,比如说有三个点
点1:(2,3),点2:(3,4), 点3(3,5) 有时候链接顺序是1-2-3,有时候是1-3-2,我希望连点顺序是按照点集合里面的顺序链接.
我的点集合是
List<KeyValuePair<int,int>> points = new List<KeyValuePair<int, int>>();
points.Add(new KeyValuePair<int, int>(23, 400));
//添加线的点
points.Add(new KeyValuePair<int, int>(23, 320));
points.Add(new KeyValuePair<int, int>(10, 320));
points.Add(new KeyValuePair<int, int>(10, 256));
points.Add(new KeyValuePair<int, int>(9, 256));
points.Add(new KeyValuePair<int, int>(9, 226));
points.Add(new KeyValuePair<int, int>(10, 210));
points.Add(new KeyValuePair<int, int>(11, 186));
points.Add(new KeyValuePair<int, int>(12, 178));
points.Add(new KeyValuePair<int, int>(13, 171));
points.Add(new KeyValuePair<int, int>(14, 163));
points.Add(new KeyValuePair<int, int>(15, 156));
points.Add(new KeyValuePair<int, int>(50, 156));LinePoints = points.ToArray();
前台代码
<DVC:LineSeries
ItemsSource="{Binding LinePoints}"
IndependentValueBinding="{Binding Path=Key}"
DependentValueBinding="{Binding Path=Value}">
</DVC:LineSeries>
全部回复
-
你好,
WPFToolkit 确实存在 这样的问题,它是根据点的坐标来画线的,并不是根据你的点顺序来画的, 如果你需要按照顺序来画线的话,我建议可以考虑使用Canvas 来画。下面的例子你可以参考一下。
https://stackoverflow.com/questions/25438139/draw-multi-point-lines-in-c-sharp-wpf
Best regards,
Zhanglong
MSDN Community Support
Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.