Sql 将ListViewItem的数组返回给子对象
我想做一张有几个系列的图表。每个系列都属于一个特定的人 首先,我在Access中读取了表格中的不同人数:Sql 将ListViewItem的数组返回给子对象,sql,vb.net,ms-access,oledb,listviewitem,Sql,Vb.net,Ms Access,Oledb,Listviewitem,我想做一张有几个系列的图表。每个系列都属于一个特定的人 首先,我在Access中读取了表格中的不同人数: connection.Open() command.CommandText = "SELECT kontoverlauf_kunden_id FROM kontoverlauf GROUP BY kontoverlauf_kunden_id" Dim kunden_id_array As New ArrayList() reader = command.Execu
connection.Open()
command.CommandText = "SELECT kontoverlauf_kunden_id FROM kontoverlauf GROUP BY kontoverlauf_kunden_id"
Dim kunden_id_array As New ArrayList()
reader = command.ExecuteReader()
Do While reader.Read()
kunden_id_array.Add(reader("kontoverlauf_kunden_id").ToString())
Loop
reader.Close()
connection.Close()
现在我有了不同的人(他们的ID)。
其次,我将需要的系列添加到图表中:
For counter As Integer = 0 To kunden_id_array.Count - 1
chartKontoverlauf.Series.Add(New Series("Konto [" & kunden_id_array.Item(counter) & "]"))
chartKontoverlauf.Series(counter).ChartType = SeriesChartType.Line
chartKontoverlauf.Series(counter).Color = Color.Red
chartKontoverlauf.Series(counter).BorderWidth = 3
Next
现在我只需要填写我需要的分数,但这有点棘手。
我做了一个函数,每次都会调用,它会为特定的人读出值(金钱和时间)。首先是函数:
Function DatenAuslesen(ByVal kunden_id As Integer) As ListViewItem
Dim lstViewItem As New ListViewItem
Try
connection.Open()
command.CommandText = "SELECT * FROM kontoverlauf WHERE kontoverlauf_kunden_id = " & kunden_id
reader = command.ExecuteReader()
Do While reader.Read()
lstViewItem.SubItems.Add(reader("kontoverlauf_wert").ToString())
lstViewItem.SubItems.Add(reader("kontoverlauf_datum").ToString())
Loop
reader.Close()
connection.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
connection.Close()
Return lstViewItem
End Function
为了补充这些要点,我写了一个小东西:
For counter As Integer = 0 To kunden_id_array.Count - 1
For counter_2 As Integer = 0 To DatenAuslesen(kunden_id_array.Item(counter)).ListView.Items.Count - 1
chartKontoverlauf.Series(counter).Points.AddXY(DatenAuslesen(kunden_id_array.Item(counter)).ListView.Items(counter_2).SubItems(0).Text, DatenAuslesen(kunden_id_array.Item(counter)).ListView.Items(counter_2).SubItems(1).Text)
Next
Next
问题是它只给了我一个我需要的值,而不是全部。我无法正确访问所有值。我仍然不确定它是否是最好的变量。我需要一个ListViewItems数组来添加它们,但我没有找到如何做到这一点
也许有人有主意?
谢谢大家! 这听起来像是个XY问题。为什么不创建点或点数据的列表或集合,而不是将数据转换为字符串并存储在UI控件中?是的,这会更好,但我认为这不会解决我的问题,因为我仍然无法获取点的所有值。