2017-12-20 12 views
0

私は折れ線グラフをプロットするアプリケーションを作成しています。これは、CSVファイルから行を取得し、(数百行があります)メソッドに渡す:MouseHoverを使用してチャートシリーズのツールヒントを更新する

私はチャートでシリーズにマウスを移動してい
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(10進数)とY(DateTime)の値です。上記の方法では、チャートをプロットすると、シリーズにカーソルを合わせると、表示されているXとYの値がシリーズのすべてのポイントで同じであることがわかります。

私は、インターネットでいくつかの検索を行なったし、私は私のチャートでのMouseMoveまたはMouseHoverイベントを含むように提案しました。私はこれをした:

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の値が表示されます。私はMouseHoverイベント修正するために管理し

答えて

0

:今

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の値を見ることができます。

関連する問題