在C#中打印文本框内容

时间:2013-08-31 11:55:16

标签: c# winforms

我想打印简单TextBox的内容。单击打印按钮后,将显示PrintDialog。

我发现了很多信息,但他们都使用了RichTextBoxes。是否有一种简单的方法可以执行this之类的操作?

2 个答案:

答案 0 :(得分:7)

textbox的打印内容名为textbox1

    PrintDocument document = new PrintDocument();
    PrintDialog dialog = new PrintDialog();
    public Form1()
    {
        InitializeComponent();
        document.PrintPage += new PrintPageEventHandler(document_PrintPage);
    }

    void document_PrintPage(object sender, PrintPageEventArgs e)
    {
        e.Graphics.DrawString(textBox1.Text, new Font("Arial", 20, FontStyle.Regular), Brushes.Black, 20, 20);
    }

    private void btnPrint_Click(object sender, EventArgs e)
    {
        dialog.Document = document;
        if (dialog.ShowDialog() == DialogResult.OK)
        {
            document.Print();
        }
    }

答案 1 :(得分:4)

看看这个:http://answers.yahoo.com/question/index?qid=20081230163003AA4xOaT, 而这:How to print the contents of a TextBox 此外,还有一个关于在C#中打印的教程:http://www.dreamincode.net/forums/topic/44330-printing-in-c%23/

在此之后,如果由于某种原因仍无法打印TextBox内容,则始终可以创建新的RichTextBox对象并将TextBox的Text分配给其文本。然后使用RichTextBox继续打印。