vb.net - Printing document in multiple pages -


this question has answer here:

private sub cmdprintmembers_click(sender object, e eventargs) handles cmdprintmembers.click     printpreviewdialog1.showdialog() end sub  private sub printdocument1_printpage(sender object, e printpageeventargs) handles printdocument1.printpage     dim font1 new font("times new roman", 26, fontstyle.bold)     e.graphics.drawstring("current members list", font1, brushes.blue, 100, 100)     dim index, numberseniors, numberjuniors, numberlines integer     dim spacing integer = 180     dim onemember string     dim font2 new font("courier new", 15, fontstyle.bold)     dim font3 new font("courier new", 15, fontstyle.regular)     dim font4 new font("courier new", 15, fontstyle.italic)     e.graphics.drawstring("surname    firstname id        category", font2, brushes.black, 100, 150)      index = 0 lstmembers.items.count - 1 'process each item in list box          onemember = lstmembers.items(index)         e.graphics.drawstring(onemember, font3, brushes.black, 100, spacing)         if instr(onemember, "senior") <> 0 'instr returns 0 if search string not present             numberseniors = numberseniors + 1         else             numberjuniors = numberjuniors + 1         end if         numberlines = numberlines + 1         spacing = spacing + 30         if numberlines = 28             e.hasmorepages = true             numberlines = 0             exit sub         end if     next     e.graphics.drawstring("total members: " & numberjuniors + numberseniors, font4, brushes.black, 100, spacing + 60) end sub 

what i'm trying membership information listbox using for next loop gets each record listbox , stores in variable onemember , details written printing document using e.graphics. after each record y co-ordinate(spacing) increased 30 records written 1 below another. variable numberlines increases 1 each record written , when problem occurs; numberlines reaches 28 records set e.hasmorepages true , numberlines set 0 on next page 28 records printed , exit sub addiotional records written next page. when run program , click control print shows this , number keeps increasing without stopping. can ensure 28 records written in each page?

also, there way write couple of blank lines when records finished written? using e.graphics wouldn't know exact y co-ordinate?

edit: question marked duplicate i've tried other solutions such setting e.hasmorepages outside loop , still can't work.


Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -