我有两个不同的图表,但每次我回到一个不同的图表。它会再次添加序列,这会导致序列中断。我曾尝试将该系列添加到series Collection中,但随后显示找不到它们。
Private Sub Finances_Load(sender As Object, e As EventArgs) Handles MyBase.Load
ChrPriceChange.ChartAreas("ChartArea").AxisX.ScrollBar.Enabled = True
ChrPriceChange.ChartAreas("ChartArea").AxisX.IsLabelAutoFit = True
ChrPriceChange.ChartAreas("ChartArea").AxisX.ScaleView.Size = 4
ChrRoomProfit.ChartAreas("ChartArea").AxisX.ScrollBar.Enabled = True
ChrRoomProfit.ChartAreas("ChartArea").AxisX.IsLabelAutoFit = True
ChrRoomProfit.ChartAreas("ChartArea").AxisX.ScaleView.Size = 6
End Sub
Private Sub CmbType_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CmbType.SelectedIndexChanged
If CmbType.SelectedItem = "Price Change" Then
ChrPriceChange.Series.Add("Single Room")
ChrPriceChange.Series.Add("Double Room")
ChrPriceChange.Series.Add("Family Room")
ChrPriceChange.Series.Add("per Adult")
ChrPriceChange.Series.Add("per Child")
ChrPriceChange.Visible = True
ChrRoomProfit.Visible = False
MyConn.ConnectionString = dataFile
MyConn.Open()
Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM [Prices] ORDER BY `Last Modified` ASC", MyConn)
Dim dr As OleDbDataReader = cmd.ExecuteReader
While dr.Read
ChrPriceChange.Series("Single Room").Points.AddXY(dr("Last Modified").ToString, dr("Single").ToString)
If (ChrPriceChange.ChartAreas(0).AxisX.Maximum > ChrPriceChange.ChartAreas(0).AxisX.ScaleView.Size) Then
ChrPriceChange.ChartAreas(0).AxisX.ScaleView.Scroll(ChrPriceChange.ChartAreas(0).AxisX.Maximum)
End If
ChrPriceChange.Series("Double Room").Points.AddXY(dr("Last Modified").ToString, dr("Double").ToString)
ChrPriceChange.Series("Family Room").Points.AddXY(dr("Last Modified").ToString, dr("Family").ToString)
ChrPriceChange.Series("per Adult").Points.AddXY(dr("Last Modified").ToString, dr("Adult").ToString)
ChrPriceChange.Series("per Child").Points.AddXY(dr("Last Modified").ToString, dr("Child").ToString)
End While
MyConn.Close()
cmd.Dispose()
End If
If CmbType.SelectedItem = "Room Profit" Then
ChrRoomProfit.Series.Add("Total Made")
ChrRoomProfit.Visible = True
ChrPriceChange.Visible = False
MyConn.ConnectionString = dataFile
MyConn.Open()
Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM [BookingInformation] ORDER BY `Date In` ASC", MyConn)
Dim dr As OleDbDataReader = cmd.ExecuteReader
While dr.Read
ChrRoomProfit.Series("Total Made").Points.AddXY(dr("Date In").ToString, dr("Total").ToString)
If (ChrRoomProfit.ChartAreas(0).AxisX.Maximum > ChrRoomProfit.ChartAreas(0).AxisX.ScaleView.Size) Then
ChrRoomProfit.ChartAreas(0).AxisX.ScaleView.Scroll(ChrRoomProfit.ChartAreas(0).AxisX.Maximum)
End If
End While
MyConn.Close()
cmd.Dispose()
End If
End Subhttps://stackoverflow.com/questions/44485167
复制相似问题