C# 导出为 PDF 并仅添加列,不包含按钮
C# Export to PDF and ONLY add Columns, not include buttons
我制作了一个密码管理器应用程序。
我试图只导出名称、用户名、密码和更改日期行。
但现在,它还会导出列按钮。
有什么提示吗?
当我使用此代码导出时:
private void exportToPDFToolStripMenuItem_Click(object sender, EventArgs e)
{
SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "Pdf File |*.pdf";
if (sfd.ShowDialog() == DialogResult.OK)
{
Document doc = new Document(iTextSharp.text.PageSize.LETTER, 10, 10, 42, 35);
PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream(sfd.FileName, FileMode.Create));
doc.Open();//Open Document to write
Paragraph paragraph = new Paragraph("data Exported From PassVault!\n\n");
PdfPTable table = new PdfPTable(dgvPasswords.Columns.Count);
//Add the headers
for (int j = 0; j < dgvPasswords.Columns.Count; j++)
{
table.AddCell(new Phrase(dgvPasswords.Columns[j].HeaderText));
}
//Flag the first row as header
table.HeaderRows = 1;
//Add the actual rows from the DGV to the table
for (int i = 0; i < dgvPasswords.Columns.Count; i++)
{
for (int k = 0; k < dgvPasswords.Rows.Count; k++)
{
if (dgvPasswords[k, i].Value != null)
{
table.AddCell(new Phrase(dgvPasswords[k, i].Value.ToString()));
}
}
}
doc.Add(paragraph);
doc.Add(table);
doc.Close();
// MessageBox.Show("Exported as Export-List.pdf to \n\n" + Application.StartupPath + " /Export-List.pdf", "PDF Exported", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
它还包括列复制和列新建按钮..
做得很完美,但现在我不确定我错过了什么。
如何从 DgvPassword 中仅导出姓名、用户名、密码和更改日期?
由于 k
使用了不正确的上限,您正在尝试访问 dgvPasswords 数组的范围之外
for (int k = 0; k < dgvPasswords.Columns.Count; k++)
{
应该阅读
for (int k = 0; k < dgvPasswords.Rows.Count; k++)
{
我制作了一个密码管理器应用程序。 我试图只导出名称、用户名、密码和更改日期行。 但现在,它还会导出列按钮。
有什么提示吗?
当我使用此代码导出时:
private void exportToPDFToolStripMenuItem_Click(object sender, EventArgs e)
{
SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "Pdf File |*.pdf";
if (sfd.ShowDialog() == DialogResult.OK)
{
Document doc = new Document(iTextSharp.text.PageSize.LETTER, 10, 10, 42, 35);
PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream(sfd.FileName, FileMode.Create));
doc.Open();//Open Document to write
Paragraph paragraph = new Paragraph("data Exported From PassVault!\n\n");
PdfPTable table = new PdfPTable(dgvPasswords.Columns.Count);
//Add the headers
for (int j = 0; j < dgvPasswords.Columns.Count; j++)
{
table.AddCell(new Phrase(dgvPasswords.Columns[j].HeaderText));
}
//Flag the first row as header
table.HeaderRows = 1;
//Add the actual rows from the DGV to the table
for (int i = 0; i < dgvPasswords.Columns.Count; i++)
{
for (int k = 0; k < dgvPasswords.Rows.Count; k++)
{
if (dgvPasswords[k, i].Value != null)
{
table.AddCell(new Phrase(dgvPasswords[k, i].Value.ToString()));
}
}
}
doc.Add(paragraph);
doc.Add(table);
doc.Close();
// MessageBox.Show("Exported as Export-List.pdf to \n\n" + Application.StartupPath + " /Export-List.pdf", "PDF Exported", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
它还包括列复制和列新建按钮.. 做得很完美,但现在我不确定我错过了什么。
如何从 DgvPassword 中仅导出姓名、用户名、密码和更改日期?
由于 k
for (int k = 0; k < dgvPasswords.Columns.Count; k++)
{
应该阅读
for (int k = 0; k < dgvPasswords.Rows.Count; k++)
{