0

DataTableをMS Chartにバインドしようとしています。Chart には、 の 2 つの列である 2 つのシリーズが含まれていますDataTable。Visual Studio 2010 で VB を使用しています。コードは次のとおりです。

Public tableTempJDL As DataTable = New DataTable("TempJDL")    
'tableTempJDL is then filled

With Me.ChartBHKW
    .DataSource = tableTempJDL

    .Series(0).Name = oGebäude.Art
    .Series(0).ChartType = DataVisualization.Charting.SeriesChartType.Spline
    .Series(1).Name = oBHKW.Modell
    .Series(1).ChartType = DataVisualization.Charting.SeriesChartType.Spline

    .Series(0).XValueMember = Convert.ToString(tableTempJDL.Columns("Stunden"))
    .Series(0).YValueMembers = Convert.ToString(tableTempJDL.Columns("PthObjekt"))

    .Series(1).XValueMember = Convert.ToString(tableTempJDL.Columns("Stunden"))
    .Series(1).YValueMembers = Convert.ToString(tableTempJDL.Columns("PthBHKW"))

    .DataBind() '<-- ArgumentOutOfRangeException
End With

ArgumentOutOfRangeException「このデータ系列に設定できる Y 値は 1 つだけです」というエラーが表示されます。これは、チャート設定に 2 つのシリーズがあるにもかかわらずです。

自分でグラフを作成することは避けたいのですが、実際にはXValue ごとに 2 つのポイントではなく、2 つのシリーズが必要です。

4

1 に答える 1

0

列「PthObjekt」が存在しないという事実を除いて、コードは実際には完全に問題ありません。

行のエラーではなく、DataBindで複数のシリーズを持つことはできないというエラーが表示されるのは奇妙です

.Series(0).YValueMembers = Convert.ToString(tableTempJDL.Columns("PthObjekt"))

この行をエラーなしで実行する方法がわかりません...とにかく。

于 2012-09-07T15:14:34.453 に答える