document没有页面itextsharp

问题描述:


string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\Purchase Order " + po_id_label.Text + ".pdf";
                Document d = new Document();
                FileStream fs = File.Create(path);
                PdfWriter.GetInstance(d, fs);
                d.Open();
                Paragraph p = new Paragraph("Supplier Name " + Supplier_name_Combobox.Text + " \t " +
                  "\t Purchase Order Id " + po_id_label.Text + "\n" +
                  "Date : " + today_date_label.Text + "\t " + "Due Date : " + due_date_dtpicker.Value.ToShortDateString() + "\n" + "\n ");

                PdfPTable pdfTable = new PdfPTable(purchase_order_datagrid.ColumnCount);
                pdfTable.DefaultCell.Padding = 3;
                pdfTable.WidthPercentage = 30;
                pdfTable.HorizontalAlignment = Element.ALIGN_LEFT;
                pdfTable.DefaultCell.BorderWidth = 1; 
                
                for (int k = 0; k < 5; k++)
                {
                    pdfTable.AddCell(new Phrase(purchase_order_datagrid.Columns[k].HeaderText));
                }
                pdfTable.HeaderRows = 1;


                foreach (DataGridViewRow row in purchase_order_datagrid.Rows)
                  {
                      foreach (DataGridViewCell cell in row.Cells)
                      {
                          if (cell.Value != null)
                              if (cell.Value.ToString().Equals("Delete Row") == false)
                              {
                                  MessageBox.Show(cell.Value.ToString());
                                  pdfTable.AddCell(cell.Value.ToString());
                              }
                      }
                  }

嗯 - 我看你做了
d.Open();

但在此之下,你不会添加你创建的任何文件'd'..



我的意思是,我希望



but below this, you don't 'add' anything you create to Document 'd'..

what I mean is, I'd expect

d.Add(p); // first paragraph
//
// PdfTable Build in here .... 
//
d.Add(pdfTable); // after you've built the pdfTable 

//(More 'adds' here as required)

d.Close();
fs.Close();