0

以下のコードでテレリック チャートをバインドしようとしましたが、スクリーン ショットのようにエラーが発生しました。

誰もがこのエラーを処理する方法を知っています。

ロジックの説明: データ テーブルをlistdataデータソースとして割り当て、テーブルの行数に基づいてデータをバインドしようとしています。

Dim listdata As new DataList 
        listdata.DataSource   = ds.Tables.Item(0)

        BaselineRadChart.Clear()    
        Dim chartSeries As New ChartSeries("Baseline", ChartSeriesType.Line) 
            chartSeries.Appearance.ShowLabels = False
            Dim i As Integer = 0
            While i < ds.Tables(0).Rows.Count
                chartSeries.AddItem(New ChartSeriesItem(listData[i].x, listData[i].y))
                i = i + 1
            End While  

            BaselineRadChart.AddChartSeries(chartSeries)
            BaselineRadChart.ChartTitle.TextBlock.Text = title
            BaselineRadChart.PlotArea.XAxis.AxisLabel.TextBlock.Text = xaxislableName
            BaselineRadChart.PlotArea.XAxis.AxisLabel.Visible = True
            BaselineRadChart.PlotArea.XAxis.IsZeroBased = False
            BaselineRadChart.PlotArea.YAxis.AxisLabel.TextBlock.Text = yaxislableName
            BaselineRadChart.PlotArea.YAxis.AxisLabel.Visible = True
            BaselineRadChart.PlotArea.YAxis.IsZeroBased = True  

以下の参照コードを使用して上記のコードを開発しようとしていました(bcz同じ機能、以下のコードが機能する場合、間違いなく私のコードが機能します)。それは彼のために働いています。

ChartSeries chartSeries = new ChartSeries("Altitude", ChartSeriesType.Line); 
chartSeries.Appearance.ShowLabels = false; 
incrementCount = 1; 

for (int i = 0; i < listData.Count; i = i + incrementCount) 
    {
        chartSeries.AddItem(new ChartSeriesItem(listData[i].x, listData[i].y)); 
    }

RadChart2.AddChartSeries(chartSeries);
RadChart2.ChartTitle.TextBlock.Text = title;
RadChart2.PlotArea.XAxis.AxisLabel.TextBlock.Text = 
"Distance (Miles)"; 
RadChart2.PlotArea.XAxis.AxisLabel.Visible = true; 
RadChart2.PlotArea.XAxis.IsZeroBased = true; 
RadChart2.PlotArea.YAxis.AxisLabel.TextBlock.Text = yAxisLabel;
RadChart2.PlotArea.YAxis.AxisLabel.Visible = true; 
RadChart2.PlotArea.YAxis.IsZeroBased = false; 

ここに画像の説明を入力

4

1 に答える 1

0

テーブルからデータを取得するつもりはありませんか?

While i < ds.Tables(0).Rows.Count
    chartSeries.AddItem(New ChartSeriesItem(_
        ds.Tables(0).Rows(i)("x"), ds.Tables(0).Rows(i)("y")))
    '               ^^^^^^^^^^^^^ get from the tabel
    i = i + 1
End While
于 2012-04-27T17:57:00.993 に答える