Hello world! I'm talking about printing in C#. I've created a program... I have a list box with six items in it. I have added my menu strip. and after adding my menu strip, I click this arrow and pick insert standard items. And then I edited it And I added font to that. I have a print dialog, a print document, a font dialog, a print preview dialog, and a menu strip. I'm going to run this first, so that you can see how it works. and then we'll look at the code. If I click tools, and pick font, I can pick afont from my common dialog control and say okay, and that changes the font in that list box. That's also the font that we're going to use to print. Under file I have print preview and in print preview we can see what our page is going to look like. And if I select print, the print dialog control comes up I can select a printer, and hit print, or in this case, I'm going to hit cancel. I haven't really added any code to the other buttons. Just for print, print preview and font. Let's take a look at the code. First of all, in form load I say font dialogue one font equals this.font. I want to make sure that the font dialog has a font assigned to it, so I can use it in printing. When I select a font, I assign that to my list box also. When I select print preview from the menu it sets the print preview dialog one document to print document one. and then I do print preview dialog show dialog. So the code is really in print document. Let's take a look at that. So print document print page: I need to set up the graphics for printing. When we print, we are really drawing the graphics on that page. So you can use any of your graphics tools on that page. I need a brush to do font. And since I'm printing everything in the listbox, I need the x position and the Y position, and then I use a for loop, for each item in that list box I draw that on the page, page is my graphics. And I increment y to the height of the font +3, so that it moves down as we move along. That's printing to e.graphics. That's the print page event args. So that's actually printing to that document. When I click print , There's a lot properties we can set. I just wanted to talk to you about them just a little bit. You can allow a selection, that's says selection you want to print just the currently selected item that is apply in this case. A current page, uh... we are allowing that to be selected. and were also allowing a range of pages. Howeve, to keep this example as simple as possible, I'm assuming that all the items in the listbox will fit on one page. I show the print dialog, and they can cancel, but they hit OK, then I set print document one printer settings to the print dialog one printer settings. That means that whatever I selected in the dialog box will be applied to the printer, and then I say print document1.print that executes all of this code here that draws the text onto the page. Now if we had 100 items in our listbox, we would have to do some math here and figure out how many fit on each page, and then print each page. If they selected they only wanted to print page 3, Again, you would have to do some math to work that out. But I wanted to keep this as simple as possible, So that's it for now.