0

大学向けの Web アプリケーションを作成しました。学生の印刷結果に印刷と印刷プレビューボタンを追加したい。フォームの印刷に使用されるクラスはどれですか?

私の印刷および印刷プレビューボタンのコーディングは以下のとおりです。

protected void btnprint_Click(object sender, EventArgs e)
{
    if (this.gridcontrol != null)
    {
        GridPrintDocument gpd = new GridPrintDocument(this.gridcontrol, true);

        PrintDialog pritdlg = new PrintDialog();
        pritdlg.Document = gpd;

        if (pritdlg.ShowDialog() == DialogResult.OK)
            gpd.Print();
    }
    else
    {
        lblstatus.Text="An error occurred attempting to print the grid ";
    }
}

protected void btnprntprew_Click(object sender, EventArgs e)
{
    if (this.gridcontrol != null)
    {
        //Uses the default printer.
        GridPrintDocument gpd = new GridPrintDocument(this.gridcontrol, true);
        PrintPreviewDialog pripredlg = new PrintPreviewDialog();
        pripredlg.Document = gpd;
        pripredlg.ShowDialog();
    }
    else
    {
        lblstatus.Text = "An error occurred attempting to preview the grid ";
    }
}
4

1 に答える 1

1

質問にC#のタグを付けたので、C#ではprintDialogとprintPreviewDialogが、どのコードになるかを実行するためのオプションです。

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{

           e.Graphics.DrawString(richTextBox1.Text, richTextBox1.Font, Brushes.Black, 100, 20);  //richtextbox1 contains what you want to print

           e.Graphics.PageUnit = GraphicsUnit.Inch;          

}

private void btnPrint_Click(object sender, EventArgs e)

{

            //PrintDialog associate with PrintDocument;

            printDialog1.Document = printDocument1;

            if (printDialog1.ShowDialog()==DialogResult.OK)
            {
                printDocument1.Print();
            }
}

private void btnPrintPreview_Click(object sender, EventArgs e)
{
       //Associate PrintPreviewDialog with PrintDocument.

        printPreviewDialog1.Document = printDocument1;  

        // Show PrintPreview Dialog

        printPreviewDialog1.ShowDialog();
}

このチュートリアルは、Asp.netで必要かどうかを確認できます。

于 2013-01-11T07:30:31.270 に答える