The principle is the same. You're printing an image, so the image must be drawn. The difference in your case is that you'd be drawing the text inside the grid rather than a screen cap of the grid itself. This requires looping through your rows and cells, then drawing the text on your document for printing.
Dim Adapter As New OleDbDataAdapter
Dim Command As New OleDbCommand
Dim xFrom As String = dtpFrom.Value.ToString.Substring(0, dtpFrom.Value.ToString.IndexOf(" "))
Dim xTo As String = dtpTo.Value.ToString.Substring(0, dtpTo.Value.ToString.IndexOf(" "))
sqlQuery = MainQuery ...