C# で DataTable を読み込んで、PDF ファイルに追加できるようにしたいと考えています。この例では、一度に 1 行ずつ実行する方法を示していますが、テーブル内の各行を定義する必要があるようです。完全な DataTable をグリッドに動的に追加する方法を理解できませんでした。ループ設定がありますが、毎回新しい行を追加する必要があるため、機能しません。私の試みの例を以下に示します。
DataTable myDT = new DataTable();
myDT = dbAccessObject.GetDTValues();//just filling DataTable
// Create a PDF Document
Document document = new Document();
// Create a Page and add it to the document
Page page = new Page();
document.Pages.Add(page);
// add Table to PDF
// Create a table
Table table = new Table(20, 100, 600, 600);
table.Columns.Add(100);
table.Columns.Add(100);
Row headers = table.Rows.Add(20, Font.Helvetica, 12);
string colStr = "name";
string colStr1 = "desc";
headers.Cells.Add(colStr);
headers.Cells.Add(colStr1);
Row row = table.Rows.Add(20, Font.Helvetica, 12);
Row row2 = table.Rows.Add(20, Font.Helvetica, 12);
int i, j;
i = j = 0;
while (i < myDT.Rows.Count)
{
while(j<myDT.Columns.Count)
{
row.Cells.Add(myDT.Rows[i][j].ToString());//need a default row here or way to add directly to the table
j++;}
j = 0;
i++;}
// Add the table to the page
page.Elements.Add(table);
// Add a label to the page
page.Elements.Add(new Label("New PDF Document", 0, 0, 512, 40, Font.Helvetica, 30, TextAlign.Center));
// Save the PDF document
document.DrawToWeb("MyDocument.pdf", true);