ツールチップがどのように機能するかに焦点を当てたある種のチュートリアルを探していましたが、あまり運がありませんでした。
5 つのデータ ポイントを含む折れ線グラフをレンダリングするテスト プロジェクトがあります。Chart
私が設定したオブジェクトをインスタンス化するときIsMapEnabled = true
。シリーズを定義するとき、ツールチップを設定しようとします。
private void DefineSeries() {
var series = new Series();
series.ToolTip = "#VALY";
series.PostBackValue = "#Index";
var x = new[] {0, 1, 2, 3, 4, 5};
var y = new[] {0, 4, 5, 3, 7, 2};
for ( int i = 0; i < x.Length; i++ ) {
series.Points.Add( new DataPoint( x[ i ], y[ i ] ) );
}
series.ChartType = SeriesChartType.Line;
DefineSeriesStyle( series );
chart_.Series.Add( series );
}
グラフは期待どおりにレンダリングされますが、マウスをデータ ポイントの上に置いたときにツールヒントが表示されません。私は明らかにどこかでステップを逃していますが、それが何であるかはわかりません。
編集:チャート ビュー モデルと後続の関数呼び出しのアクション メソッドとコンストラクターを示すコード。
public ActionResult CausedOutPoint() {
var causedOut = new CausedOutViewModel();
var path = Server.MapPath( "~" ) + "CausedOut.Png";
causedOut.Chart.SaveImage( path, ChartImageFormat.Png );
return File( path, "img/png" );
}
public CausedOutViewModel() {
chart_ = new Chart {IsMapEnabled = true};
chart_.PostPaint += chart__PostPaint;
chart_.RenderType = RenderType.ImageMap;
chart_.ID = "CausedOut";
InitializeChart( chart_ );
chart_.Width = new Unit( 1200, UnitType.Pixel );
chart_.Height = new Unit( 800, UnitType.Pixel );
CreateTitles();
}
private void InitializeChart( ) {
DefineSeries();
DefineChartArea();
}