Print Envelope

I have a form with 6 TextBoxes on it called..
to, addr1,addr2,city,state,zip
I would like for the user to click a button and and print a standard envelope with the textbox data in block address format.  How can this be done?
LVL 1
H-SCAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

H-SCAuthor Commented:
CodeCruiser,

Thanks for the reply.. I have worked on this a bit and have the textboxes as parameters in a rdlc report.  how can I preset the printer to envelope so that the user does not have to preview and then set.  I would like to do this when the print button is clicked and not as a default on the printer itself
0
CodeCruiserCommented:
Hi,
Good to hear that you are making some progress. Here are a few pointers which would help you in changing printer settings. Also included is some example code

http://www.experts-exchange.com/Programming/Languages/.NET/Visual_Basic.NET/Q_23652782.html

http://www.codeproject.com/KB/dotnet/NET_Printer_Library.aspx
Private settings As New PrinterSettings()
Private page As PageSettings
 
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Form1.Load
    '' Populate a combobox with all the printer names
    comboPrinters.BeginUpdate()
    comboPrinters.Items.Clear()
    For Each name As String In PrinterSettings.InstalledPrinters
        comboPrinters.Items.Add(name)
    Next
    comboPrinters.EndUpdate()
    comboPrinters.SelectedItem = settings.PrinterName
End Sub
 
Private Sub comboPaperSizes_SelectedValueChanged(ByVal sender As Object, ByVal e As EventArgs) Handles comboPaperSizes.SelectedValueChanged
    page = New PageSettings(settings)
    page.PaperSize = DirectCast(comboPaperSizes.SelectedValue, PaperSize)
End Sub
 
Private Sub comboPrinters_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles comboPrinters.SelectedIndexChanged
    '' Populate a combox with paper sizes 
    settings.PrinterName = DirectCast(comboPrinters.SelectedItem, String)
    Dim sizes As New BindingList(Of PaperSize)()
    For Each size As PaperSize In settings.PaperSizes
        sizes.Add(size)
    Next
    comboPaperSizes.DisplayMember = "PaperName"
    comboPaperSizes.DataSource = sizes
End Sub

Open in new window

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
PMI ACP® Project Management

Prepare for the PMI Agile Certified Practitioner (PMI-ACP)® exam, which formally recognizes your knowledge of agile principles and your skill with agile techniques.

H-SCAuthor Commented:
CodeCruiser,

This is perfect...one more question on this.  Can I set the number Of Copies property anywhere via code.

Thank you again
0
CodeCruiserCommented:
You can use the PrinterSettings.Copies property to set the number of copies to print.

settings.Copies = 5
0
H-SCAuthor Commented:
CodeCruiser,
many thanks! for your much needed help with this one
0
CodeCruiserCommented:
I am happy that your problem is sorted.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic.NET

From novice to tech pro — start learning today.