2016-08-26 17 views
4

私はチャート上に様々なポイントを持っています。私はその特定のポイント上でマウスを動かす際のツールチップのポイントの正確な値を表示できるようにしたいと思います。マウスオーバー時にチャートポイントの値をどのように表示しますか?

例:

Chart1.Series("Series1").Points.AddXY("Jul", 600) 
Chart1.Series("Series1").Points.AddXY("aug", 458) 

チャート上のこれらの点マウスオーバーで、ツールヒントのテキストは、 "600" を表示したり、 "458" 必要があります。

編集:

これは私が近づくが、それは唯一のポイント上のマウスの位置ではなく、ポイントの最大値の値を示しています

Private Sub Chart1_GetToolTipText(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataVisualization.Charting.ToolTipEventArgs) Handles Chart1.GetToolTipText 
    If e.HitTestResult.PointIndex >= 0 Then 
     If e.HitTestResult.ChartElementType = DataVisualization.Charting.ChartElementType.DataPoint Then 
      MetroToolTip1.SetToolTip(Chart1, e.y.tostring) 
     End If 
    End If 
End Sub 

答えて

2

解決策が見つかりましたが、最も簡単な方法は、 'Series.ToolTip'プロパティを設定することです。

Chart1.Series(0).ToolTip = "#VAL{0.0}"

ツールヒントは、キーワードの使用は、大部分のMS Custom Numeric Format Stringsに続くオプションのフォーマット指定子が続く表示する値を定義することができます。これらのキーワードを見つける最も簡単な方法は、PropertyGridに公開されているエディタを使用してツールヒントを設定することです。

この例では、#VALはy値を表示するように指示します。 {0.0}は、 "0.0"形式の文字列を使用して数値をフォーマットするよう指示します。

編集: Dundasサイト(MSはコントロールを購入しました)のテーブルを見つけました。これはキーワードをリストし、フォーマット指定子の使用方法の詳細を説明しています。 http://support2.dundas.com/Default.aspx?article=1132

+0

最も単純な方法が勝ちます。ありがとう! –

0

これは必要なコードですポイント値を表示する:

Private Sub chart1_GetToolTipText(sender As Object, e As ToolTipEventArgs) Handles Chart1.GetToolTipText 
    ' Check selected chart element and set tooltip text for it 
    Select Case e.HitTestResult.ChartElementType 
     Case ChartElementType.DataPoint 
      Dim dataPoint = e.HitTestResult.Series.Points(e.HitTestResult.PointIndex) 
      e.Text = dataPoint.YValues(0).ToString 
      Exit Select 
    End Select 
End Sub 
関連する問題