如何获得c#图表的缩放事件
本文关键字:缩放 事件 何获得 | 更新日期: 2023-09-27 18:07:07
我有一个图表(win-forms visual studio自带的标准图表),我已经设置了缩放。每次这个图表是缩放我想运行一个函数,但我找不到一个事件,是在缩放触发。我查看了事件列表,我认为唯一可能起作用的是"AxisViewChanged",但是这是在许多更改上触发的,我不知道如何单独列出缩放更改。我是不是漏掉了什么变焦事件?或者这根本就不存在?
你可以这样做
double oldSelStart = -1;
double oldSelEnd = -1;
private void chart1_AxisViewChanged(object sender, ViewEventArgs e)
{
double newSelStart = chart1.ChartAreas["Default"].CursorX.SelectionStart;
double newSelEnd = chart1.ChartAreas["Default"].CursorX.SelectionEnd;
const double TOLERANCE = 0.1;
if (Math.Abs(oldSelEnd - newSelEnd) > TOLERANCE || Math.Abs(newSelStart - oldSelStart) > TOLERANCE)
{
oldSelStart = newSelStart;
oldSelEnd = newSelEnd;
//Zoom has actually changed do your stuff
}
}
基本上,您记住旧的缩放范围并自己处理AxisViewChanged并确定缩放是否实际发生了变化