我有一个TabControl,其中通过ItemsControl包含动态数量的图表窗格。在ItemsControl的ItemsTemplate内部是一个带有RenderableSeries、XAxis、YAxes和VerticalChartGroup绑定的单个ScichartSurface。
XAML代码大致如下:
<s:SciChartSurface name="Chart" RenderableSeries="{Binding rSeries}" XAxis="{Binding xAxis}" YAxes="{Binding yAxes}" s:SciChartGroup.VerticalChartGroup="{Binding vGroup}">
在表面上,我有一个ModifierGroup,其中包含(按顺序)一个RubberbandXyZoomModifier(仅限于X轴),MouseWheelZoomModifier,ZoomPanModifier,ZoomExtentsModifier和一个自定义的mod调用TimeSegmentSelectionModifier。所有这些修改器的ReceiveHandledEvents属性都设置为True,它们都在同一个MouseEventGroup下,并且在正常情况下似乎都可以正常工作。
注意:橡皮筋和时间段修改器被逆向启用。这意味着一次只有一个功能。
我的主要问题是RubberBand Mod:
假设我正在显示5个图表窗格并且想要缩放;如果我在第3个图表中单击并拖动,每个图表都会正确缩放。 如果我在第3个图表中单击,将鼠标拖到该图表之外(屏幕上的任何其他位置)并松开,那么只有1、2和3号图表会正确缩放。图表4和5不会移动,并且像是我只是缩放到了极限。
这在任何数量的图表窗格上都发生,并且问题发生在我缩放的任何窗格上。
我已经解决这个问题几天了,但我不知道还能去哪里寻找帮助。 非常感谢您的帮助。