原始数据源返回一个包含列(Timestamp、1stValue)的表 当我只有一系列数据(数据源)时,此图表将起作用:
MyChart.Series[0].ToolTip = "( #VALX{hh:mmtt}, #VALY )";
如您所见,X 轴是 X 数据点格式上的时间戳。 当我将鼠标悬停在数据点上时,我可以看到显示的工具提示 “(上午 10:20,520)”
但是,当我有两个系列使用另一个数据源返回包含列的表时: (时间戳、第一个值、第二个值)
MyChart.Series[0].ToolTip = "( #VALX{hh:mmtt}, #VALY )";
MyChart.Series[1].ToolTip = "( #VALX{hh:mmtt}, #VALY )";
它仅适用于第一个系列,当我将鼠标悬停在第二个系列上时,我看到了这个“( hh:mmtt, 520 )”,看起来好像 X 值的数据上有垃圾(这是与第二个系列的值相同),当我使用时,Y 值加载得很好 “( #VALX, #VALY )”,我将鼠标悬停在数据点上,得到“( 40826.291666, 520)”
这就是我将数据源与图表链接起来的方式
MyChart.DataBindTable(datasrc, "DateTime");
蹩脚的解决方案是用第一个系列的 X 值覆盖第二个系列的 X 值,但这不仅仅是 DataBindTable 的目的吗?
最佳答案
我明白了,由于某种原因,第二个系列的值类型被设置回 double 而不是 DateTime (DataBindTable 中使用的 X 轴的类型),您所要做的就是将值类型设置为 DateTime,如下所示:
MyChart.Series[1].XvalueType = ChartValueType.DateTime
关于c# - 具有多个系列的 MS 图表上的工具提示标签错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13639874/