.net 在选择上控制奇怪的行为

.net 在选择上控制奇怪的行为,.net,mschart,microsoft-chart-controls,.net,Mschart,Microsoft Chart Controls,我正在应用程序中使用MSChartControl。在图表控件中,我显示了一个图像,我想在其中使用图表控件的选择机制,使用光标从图表区域选择一个图像范围 在SelectionRangeChanged事件中,我希望在用户完成选择后得到通知,然后我希望为尚未选择的区域着色并隐藏原始选择 由于没有ClearSelection(至少我还没有找到这样的方法),我将选择设置为没有选择时光标最初拥有的值: private void chartTopoAP_SelectionRangeChanged(object

我正在应用程序中使用MSChartControl。在图表控件中,我显示了一个图像,我想在其中使用图表控件的选择机制,使用光标从图表区域选择一个图像范围

在SelectionRangeChanged事件中,我希望在用户完成选择后得到通知,然后我希望为尚未选择的区域着色并隐藏原始选择

由于没有ClearSelection(至少我还没有找到这样的方法),我将选择设置为没有选择时光标最初拥有的值:

private void chartTopoAP_SelectionRangeChanged(object sender, CursorEventArgs e)
{
    int Start = (int)e.NewSelectionStart;
    int End = (int)e.NewSelectionEnd;

    MathUtil.SwapIf(Start > End, ref Start, ref End);

    mySelectedRange = new Tuple<int, int>(Start, End);

    chartTopoAP.ChartAreas[0].CursorX.SetSelectionPosition(double.NaN, double.NaN);
    chartTopoAP.Invalidate();
    chartTopoAP.Update();
}
它起作用了。但我该如何清除一个选择呢

谢谢
Martin

它似乎与scaleview缩放设置有关。如果你加上

chartTopoAP.ChartAreas[0].AxisX.ScaleView.ZoomReset();
重置选择后,症状消失

chartTopoAP.ChartAreas[0].AxisX.ScaleView.ZoomReset();