C# 查特南女士

C# 查特南女士,c#,mschart,C#,Mschart,我将MS图表与C#结合使用,当我试图从图表中检索几乎所有的元值时,我遇到了问题,我得到的只是NaN。几个例子 void chart_CursorPositionChanged(object sender, CursorEventArgs e) { double selectStart = e.NewSelectionStart; double selectEnd = e.NewSelectionEnd; } e.NewSelectionStart

我将MS图表与C#结合使用,当我试图从图表中检索几乎所有的元值时,我遇到了问题,我得到的只是NaN。几个例子

void chart_CursorPositionChanged(object sender, CursorEventArgs e)
{
            double selectStart = e.NewSelectionStart;
            double selectEnd = e.NewSelectionEnd;
}

e.NewSelectionStart and e.NewSelectionEnd both show NaN for their values.
另一个例子

chart.ChartAreas[0].AxisX.Maximum

也是楠。但是,如果我将它设置为一个值,图表会正确地反映它。知道我做错了什么吗

听起来您可能没有正确初始化
图表。图表区域[0]
:是否已将
光标设置为true

chart.ChartAreas[0].CursorX.IsSelectionEnabled = true;
如果尚未启用用户选择,则当用户单击并移动鼠标时,事件仍将触发,但不会进行选择

至于

chart.ChartAreas[0].AxisX.Maximum == Double.NaN

这意味着图表将管理页边距本身。

不要像您现在这样使用CursorEventArgs提供的数据,请执行以下操作:

void chart_CursorPositionChanged(object sender, CursorEventArgs e)
{
            double selectStart = chart.ChartAreas["ChartArea1"].CursorX.SelectionStart;
            double selectEnd = chart.ChartAreas["ChartArea1"].CursorX.SelectionEnd;

}

我今天遇到了和你一样的问题,这帮我解决了。我不知道为什么CursorEventArg数据返回一个NaN,但是请学习正确的标记以正确格式化代码。