【问题标题】:Print data from datagridview从 datagridview 打印数据
【发布时间】:2012-01-26 19:36:43
【问题描述】:

我有下一个代码,它使用来自 datagridview 的数据创建一个打印页面。

     Font print10B = new Font("Lucida Console", 10, FontStyle.Bold);
        Font print8B = new Font("Arial", 9, FontStyle.Regular);
        Font print6B = new Font("Arial", 8, FontStyle.Regular);

        e.Graphics.DrawString("   NOTA DE PLATA",print10B,Brushes.Black,10,10);
        e.Graphics.DrawString("-----------------------------------------", new Font(dataGridView1.Font.FontFamily, 8, FontStyle.Regular), Brushes.Black, 10, 70);
        e.Graphics.DrawString("Produs   | Cant | Pret | Total ", print8B, Brushes.Black, 10, 100);
        int height = 0;
        int x = 10;
        for (int i = 0; i < dataGridView1.Rows.Count; i++)
        {
            e.Graphics.DrawString(dataGridView1.Rows[i].Cells["DenumireProdus"].Value.ToString(), print6B, Brushes.Black, x, 120+height);
            e.Graphics.DrawString(dataGridView1.Rows[i].Cells["produs_cantitate"].Value.ToString(), print6B, Brushes.Black, x+70, 120 + height);
            e.Graphics.DrawString(dataGridView1.Rows[i].Cells["produs_pret"].Value.ToString() , print6B, Brushes.Black, x+105, 120 + height);
            e.Graphics.DrawString(dataGridView1.Rows[i].Cells["produsvaloare"].Value.ToString(), print6B, Brushes.Black, x + 135, 120 + height);
            height += 20;
        }
        e.Graphics.DrawString("-----------------------------------------", new Font(dataGridView1.Font.FontFamily, 8, FontStyle.Regular), Brushes.Black, 10, dataGridView1.Height);
        e.Graphics.DrawString("Total:  " + textBox1.Text+" RON", print10B, Brushes.Black,40, dataGridView1.Height + 10);

到这里为止:

       e.Graphics.DrawString("-----------------------------------------", new Font(dataGridView1.Font.FontFamily, 8, FontStyle.Regular), Brushes.Black, 10, dataGridView1.Height);
        e.Graphics.DrawString("Total:  " + textBox1.Text+" RON", print10B, Brushes.Black,40, dataGridView1.Height + 10);

打印机不打印上述部分(最后 2 个拉绳)。为什么?

打印机页面尺寸为比例 A4 (48mmx68mm)

【问题讨论】:

  • 您是否尝试仅打印底部?
  • 纸上的空间用完了吗?
  • @CodyGray 我想是的,我怎么知道我是否这样做了?

标签: c# winforms datagridview


【解决方案1】:

为什么不能使用 Crystal 报表?或任何其他报告工具,在您的情况下可能会更好。

Tutorial for Crystal Reports

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-21
    • 1970-01-01
    • 2010-10-08
    • 2013-03-16
    • 1970-01-01
    • 1970-01-01
    • 2013-03-29
    • 2010-10-19
    相关资源
    最近更新 更多