C# 放大和缩小mschart缩放

C# 放大和缩小mschart缩放,c#,winforms,zooming,scale,mschart,C#,Winforms,Zooming,Scale,Mschart,默认情况下,当我缩放某些图表时,它会显示在左上角和左下角的缩小按钮中 当我点击它们时,它们就像后退一样。例如,如果我放大5次,那么我必须同时单击缩小5次,以此类推 如何在每次单击时将缩小调整为后退缩放2次,而不受历史缩放的影响。您需要为单击的AxisScrollBar实现一个处理程序: chart1.AxisScrollBarClicked += new ScrollBarEventHandler(this.chart1_AxisScrollBarClicked); ... private v

默认情况下,当我缩放某些图表时,它会显示在左上角和左下角的缩小按钮中

当我点击它们时,它们就像后退一样。例如,如果我放大5次,那么我必须同时单击缩小5次,以此类推


如何在每次单击时将缩小调整为后退缩放2次,而不受历史缩放的影响。

您需要为单击的AxisScrollBar实现一个处理程序:

chart1.AxisScrollBarClicked += new ScrollBarEventHandler(this.chart1_AxisScrollBarClicked);
...

private void chart1_AxisScrollBarClicked(object sender, ScrollBarEventArgs e)
{
  // Handle zoom reset button
  if(e.ButtonType == ScrollBarButtonType.ZoomReset)        
  {
    e.IsHandled = true;

    double x_view_start, x_view_end, y_view_start, y_view_end;
    // calculate the zooming params here according to desired behaviour

    e.ChartArea.AxisX.ScaleView.Zoom(x_view_start, x_view_end);
    e.ChartArea.AxisY.ScaleView.Zoom(y_view_start, y_view_end);
  }
}