Private Sub btn_Rate_Click(sender As Object, e As EventArgs) Handles btn_Rate.Click Label37.Visible = True Label39.Visible = True Label48.Visible = True Label49.Visible = False Label51.Visible = False Label52.Visible = False Label37.Text = "The Chart of " & Label38.Text & " by Rate of Incidents " Label48.Text = "From" & " " & Label42.Text & " " & "to" & " " & Label45.Text If DropDownList13.SelectedIndex = -1 Then Label39.Text = Label40.Text Else Label39.Text = Label40.Text & Label41.Text End If btn_Print.Visible = True Dim dtRate As DataTable = New DataTable("dtRates") For Each cell As TableCell In gvRate.HeaderRow.Cells dtRate.Columns.Add(cell.Text.Trim()) Next For Each row As GridViewRow In gvRate.Rows dtRate.Rows.Add() For i As Integer = 0 To row.Cells.Count = -1 dtRate.Rows(row.RowIndex)(i) = row.Cells(i).Text.Trim() Next Next Dim departments As List(Of String) = New List(Of String)() departments = (From p In dtRate.AsEnumerable() Select p.Field(Of String)("Department")).Distinct().ToList() If RateChart.Series.Count() = 1 Then RateChart.Series.Remove(RateChart.Series(0)) End If For Each department As String In departments Dim UserDepartment = department Dim X As Integer() X = (From p In dtRate.AsEnumerable() Where p.Field(Of String)("Department") = UserDepartment Order By p.Field(Of String)("Period_Shown") Select Convert.ToInt32(p.Field(Of String)("Period_Shown"))).ToArray() Dim Y As Decimal() Y = (From p In dtRate.AsEnumerable() Where p.Field(Of String)("Department") = UserDepartment Order By p.Field(Of String)("Period_Shown") Select Convert.ToDecimal(p.Field(Of String)("Rate_Int"))).ToArray() RateChart.Series.Add(New Series(department)) RateChart.Series(department).IsValueShownAsLabel = True RateChart.Series(department).BorderWidth = 3 RateChart.Series(department).ChartType = SeriesChartType.Line RateChart.Series(department).Points.DataBindXY(X, Y) Next RateChart.Legends(0).Enabled = True End Sub
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)