Sql server 有没有办法让这成为一个循环?VB.NET
关于如何将其转换为“FOR循环”的任何想法,因为我想要显示的数据数量不是固定的或恒定的,所以我需要将其转换为FOR循环Sql server 有没有办法让这成为一个循环?VB.NET,sql-server,crystal-reports,vb.net-2010,Sql Server,Crystal Reports,Vb.net 2010,关于如何将其转换为“FOR循环”的任何想法,因为我想要显示的数据数量不是固定的或恒定的,所以我需要将其转换为FOR循环 Public Sub ReportTransactionsLogs(ByVal LV As ListView) Dim rReport As New ReportTransLog Dim row As DataRow = Nothing Dim ds As New DataSet
Public Sub ReportTransactionsLogs(ByVal LV As ListView)
Dim rReport As New ReportTransLog
Dim row As DataRow = Nothing
Dim ds As New DataSet
ds.Tables.Add("TransactionsLog")
With ds.Tables(0).Columns
.Add("Username")
.Add("ActionDate")
.Add("ActionTime")
.Add("Activity")
.Add("POInvoice")
End With
For Each LVI As ListViewItem In LV.Items
row = ds.Tables(0).NewRow
row(0) = LVI.Text
row(1) = LVI.SubItems(1).Text
row(2) = LVI.SubItems(2).Text
row(3) = LVI.SubItems(3).Text
row(4) = LVI.SubItems(4).Text
ds.Tables(0).Rows.Add(row)
Next
rReport.SetDataSource(ds.Tables(0))
ReportViewer.CrystalReportViewer1.ReportSource = rReport
End Sub
像这样试试
For Each LVI As ListViewItem In LV.Items row = ds.Tables(0).NewRow
For i As Integer = 1 To ds.Table(0).Columns.Count()
If InlineAssignHelper(i, 0) Then
row(i) = LVI.Text
Else
row(i) =LVI.SubItems(i).Text
End If
Next
Next
不清楚,此循环适用于每个ListViewItem,为什么需要将其替换为for..循环?因为我的列名不是固定的,有时会有所不同,有时,我想显示的列数不是constantI,我不明白这怎么可能是sql server标记,因为listview的数据来自sql server。。因此,这可能会有帮助。我在哪里可以得到InlineAssignhelper?它类似于:如果(i==0),那么行(i)=LVI。文本结束我从显示它的某个地方转换它,我不熟悉vb.net。