Here is code for Printing in VB.Net which we r using in our Project.
Its printing the document but not in tabular format which we require.
So try this code its working , but if u find any solution to print in receipt format.Plz let me knw.
Private Sub btnWrite_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnWrite.Click
Try
Fs = New FileStream("D:\MyFile1.txt", FileMode.Create)
Sw = New StreamWriter(Fs)
Dim Row As Integer
'Row = myView.RowCount - 1
Sw.WriteLine("{0,5}{1,15}{2,20}{3,20}{4,20}", "SUPPLIER_ID", "SUPPLIER_NAME", "SUPPLIER_ADDRESS", "CONTACT_PERSON", "CONTACT_NUMBER")
Sw.WriteLine("----------------------------------------------------------------------------------------------------------------------------------------------")
For Row = 0 To (myView.RowCount - 1)
Sw.WriteLine()
Sw.WriteLine("{0,5}{1,25}{2,35}{3,45}", ((myView.Item("SUPPLIER_ID", Row)).Value), ((myView.Item("SUPPLIER_NAME", Row)).Value), ((myView.Item("SUPPLIER_ADDRESS", Row)).Value), ((myView.Item("CONTACT_PERSON", Row)).Value)) ', "CONTACT_NUMBER")
Sw.WriteLine("------------------------------------------------------------------------------------------------------------------------------------------")
Next
'MessageBox.Show(j)
'MessageBox.Show(i)
Sw.Close()
Fs.Close()
Fs1 = New FileStream("D:\MyFile1.txt", FileMode.Open)
Sr1 = New StreamReader(Fs1)
txtDisplay.Text = Sr1.ReadToEnd
Sr1.Close()
Fs1.Close()
Catch ex As Exception
'MessageBox.Show(ex.Message)
Finally
Sw = Nothing
Fs = Nothing
End Try
End Sub
Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Click
Try
streamToPrint = New StreamReader("D:\MyFile1.txt")
Try
printFont = New Font("Arial", 10)
Dim pd As New Printing.PrintDocument()
AddHandler pd.PrintPage, AddressOf Me.pd_PrintPage
pd.Print()
Finally
streamToPrint.Close()
End Try
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub pd_PrintPage(ByVal sender As Object, ByVal ev As Printing.PrintPageEventArgs)
Dim linesPerPage As Single = 0
Dim yPos As Single = 0
Dim count As Integer = 0
Dim leftMargin As Single = ev.MarginBounds.Left
Dim topMargin As Single = ev.MarginBounds.Top
Dim line As String = Nothing
' Calculate the number of lines per page.
linesPerPage = ev.MarginBounds.Height / printFont.GetHeight(ev.Graphics)
' Print each line of the file.
While count < linesPerPage
line = streamToPrint.ReadLine()
If line Is Nothing Then
Exit While
End If
yPos = topMargin + count * printFont.GetHeight(ev.Graphics)
ev.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, yPos, New StringFormat())
count += 1
End While
' If more lines exist, print another page.
If Not (line Is Nothing) Then
ev.HasMorePages = True
Else
ev.HasMorePages = False
End If
End Sub