【问题标题】:Update Chart series's ToolTip using MouseHover使用鼠标悬停更新图表系列工具提示
【发布时间】:2017-12-20 06:45:29
【问题描述】:

我正在编写一个绘制折线图的应用程序。它从 CSV 文件中获取一行并将其传递给一个方法(有几百行):

Private Function plotChart(ByVal sortedRow As String())

        count = sortedRow(8)    'Represents X value
        Dim spcRawPoint = sortedRow(7)  'Represents Y value            
        Try                
            Me.Chart1.Series("Result").Points.AddXY(count, spcPoint)
            Me.Chart1.Series("Result").ToolTip = "Value: " + spcRawPoint + Environment.NewLine + "Date: " + count.ToString
        Catch ex As Exception
            MessageBox.Show(ErrorToString)
        End Try

    End Function

当我将鼠标悬停在图表上的系列上时,我希望它显示相应的 X(Decimal) 和 Y(DateTime) 值。使用上述方法,一旦绘制图表,当我将鼠标悬停在系列上时,我看到显示的 X 和 Y 值在系列上的所有点上都是相同的。

我在互联网上进行了一些搜索,发现有人建议在我的图表中包含 MouseMoveMouseHover 事件。我这样做了:

Private Sub Chart1_MouseHover(ByVal sender As System.Object, ByVal e As ToolTipEventArgs) Handles Chart1.MouseHover
        If e.HitTestResult.PointIndex >= 0 Then
            If e.HitTestResult.ChartElementType = DataVisualization.Charting.ChartElementType.DataPoint Then
                Dim Xvalue As Decimal = e.X
                Dim Yvalue As DateTime = Convert.ToDateTime(e.Y)
                Me.Chart1.Series("Result").ToolTip = "Value: " + Xvalue + Environment.NewLine + "Date: " + Yvalue.ToString
            End If
        End If
    End Sub

代码能够构建,但是当我运行它时发生异常:

System.InvalidCastException was unhandled
  HResult=-2147467262
  Message=Unable to cast object of type 'System.EventArgs' to type 'System.Windows.Forms.DataVisualization.Charting.ToolTipEventArgs'.

我发现这是一个选角问题,但我不知道如何解决它。 我需要的是当我将鼠标悬停在图表区域中提到的系列上时,工具提示将显示 X 和 Y 值。

【问题讨论】:

    标签: vb.net charts tooltip mousehover


    【解决方案1】:

    我设法修复了 MouseHover 事件:

    Private Sub Form1_MouseHover(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.MouseHover
            Me.Chart1.Series("Result").ToolTip = "#VALY{F}\n#VALX"    
        End Sub
    

    现在,只要将鼠标悬停在图表系列上,我就可以看到 X 和 Y 值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-22
      • 2022-01-06
      • 1970-01-01
      • 2014-12-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多