0

データセットがあります。以下のコードを使用して、以下の元のコードを使用して radchart をバインドするにはどうすればよいですか?

Partial Public Class Chart_Examples_Skinning_Bars_DefaultCS
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(sender As Object, e As EventArgs)
        If Not Page.IsPostBack Then
            Dim series As New ChartSeries()
            series.Type = ChartSeriesType.Bar
            series.DataXColumn = "XValue"
            series.DataYColumn = "YValue"

            CapacityRadChart.Series.Add(series)

            CapacityRadChart.DataSource = Me.GetDataSource()
            CapacityRadChart.DataBind()
        End If
    End Sub

    Private Function GetDataSource() As List(Of Class1)
        Dim r As New Random()
        Dim source As List(Of Class1) = New List(Of Class1)

        For i As Integer = 0 To 399
            Dim item As New Class1()

            item.XValue = i
            item.YValue = r.[Next](0, 100)

            source.Add(item)
        Next

        Return source
    End Function

End Class

私はこのようにやっていますが、次のエラーがスローされています:

「COUNT」を含む列のタイプは数値ではありません」。

適切なコードを提案してください。

Dim dt As DataTable = ds.Tables.Item(0)
Dim dr As DataRow
Dim listdata As new List(Of Double)

Dim list As New List(Of DataRow)(dt.[select]())
    For Each dr  In dt.Rows            
            list.Add(dr.ToLis)
    Next

Dim series As New ChartSeries()
series.Type = ChartSeriesType.Bar
    series.DataXColumn  = "CapacityDelay"
    series.DataYColumn = "COUNT"

    BaselineRadChart.Clear()
    BaselineRadChart.Series.Add(series)

    BaselineRadChart.DataSource = list
    BaselineRadChart.DataBind()
4

1 に答える 1

1

ds.Tables.Item(0) で列を作成するにはどうすればよいですか? データベースから直接 DataTable をバインドしますか、それとも手動で DataTable を作成しますか?

手動で作成する場合は、DataColumn の DataType を宣言する必要がある場合があります

Dim dt As DataTable
dt.Columns.Add("CapacityDelay", System.Type.GetType("System.String"))
dt.Columns.Add("Count", System.Type.GetType("System.Int32"))
于 2012-05-07T04:06:09.677 に答える