我用while循环生成了表格,但是最后一行iTextSharp被删除了....有任何想法如何解决它....请参阅下面的代码。
mesure_tale.AddCell(New PdfPCell(New Phrase("č.m.", spec_font)))
mesure_tale.AddCell(New PdfPCell(New Phrase("Hodnota (mm)", spec_font)))
mesure_tale.AddCell(New PdfPCell(New Phrase("č.m.", spec_font)))
mesure_tale.AddCell(New PdfPCell(New Phrase("Hodnota (mm)", spec_font)))
mesure_tale.AddCell(New PdfPCell(New Phrase("č.m.", spec_font)))
mesure_tale.AddCell(New PdfPCell(New Phrase("Hodnota (mm)", spec_font)))
mesure_tale.AddCell(New PdfPCell(New Phrase("č.m.", spec_font)))
mesure_tale.AddCell(New PdfPCell(New Phrase("Hodnota (mm)", spec_font)))
Dim mesure_array As Double() = dgv_do_array(cislo_merania)
Dim average_value As Double = create_average(cislo_merania)
Dim k As Integer = 0
While k < cislo_merania
mesure_tale.AddCell(New PdfPCell(New Phrase(k + 1, spec_font)))
Dim mesure_cell As New PdfPCell(New Phrase(mesure_array(k).ToString, spec_font))
If mesure_array(k) > (average_value + (average_value * percentualna_odchylka)) Then
mesure_cell.BackgroundColor = New BaseColor(255, 120, 120) 'Red
mesure_tale.AddCell(mesure_cell)
ElseIf mesure_array(k) < (average_value - (average_value * percentualna_odchylka)) Then
mesure_cell.BackgroundColor = New BaseColor(120, 170, 255) 'Blue
mesure_tale.AddCell(mesure_cell)
Else
mesure_cell.BackgroundColor = New BaseColor(175, 255, 120) ' Green
mesure_tale.AddCell(mesure_cell)
End If
k += 1
End While
pdfDoc.Add(mesure_tale)
答案 0 :(得分:2)
我认为dgv_do_array(cislo_merania)
返回数组的最高边界而不是数组的实际长度。
更改
当k < cislo_merania
到
虽然k <= cislo_merania