Allora, questo è il mio codice:

codice:
For riga = 0 To 10
   yPos = margineAlto + riga * myFont.GetHeight(ev.Graphics)
   myStr = tabellaDatiDocumento.DataSet.Tables(0).Rows(riga)(0)
   ev.Graphics.DrawString(myStr,m_oFont,Brushes.Black,margSinistro,yPos)
Next
E così funziona, stampando tutte le righe correttamente.
Se invece scrivo...

codice:
For riga = 0 To 10
   yPos = margineAlto + riga * myFont.GetHeight(ev.Graphics)
   myStr = formattaNumeri(tabellaDatiDocumento.DataSet.Tables(0).Rows(riga)(0))
   ev.Graphics.DrawString(myStr,m_oFont,Brushes.Black,margSinistro,yPos)
Next
... dove formattaNumeri è la seguente funzione...

codice:
Public Function formattaNumeri(ByVal numberToFormat) As String
    Dim ilNumero As String = numberToFormat.ToString
    Dim myResult As String = ilNumero
    Dim parteDecimale As String
    Dim arrayToFormat As Array = ilNumero.Split(",")
    parteDecimale = arrayToFormat(1)
    If parteDecimale = "" Then
        myResult = ilNumero & ",00"
    End If

    If parteDecimale.Length = 1 Then
        myResult = ilNumero & "0"
    End If

    formattaNumeri = myResult
End Function
Stampa solo la prima riga...
Come mai?
Cosa c'è che non va nella funzione?
Vi ringrazio anticipatamente per l'aiuto.