我有这个界面
我想打印第一个选项卡中的所有数据(第一个选项卡有一个停靠面板,其中包含所有labels
和texboxes
),包括图片。
我用过
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
if (tabControl1.SelectedIndex == 0)
{
string data = "Title : \t" + cmbTitle.Text + "\n\nFirst Name : \t" + txtFirstName.Text + "\n\nLast Name : \t" + txtLastName.Text + "\n\nMiddle Name : \t" + txtMiddleName.Text + "\n\nFull Name : \t" + txtFullName.Text + "\n\nNick Name : \t" +
txtNick.Text + "\n\nGender : \t" + cmbGender.Text + "\n\nCountry : \t" + cmbHomeCountry.Text + "\n\nState : \t" + txtState.Text + "\n\nEmail Address : " + txtEmail.Text;
Image img = resizeImage(pictureBox1.Image, new Size(300, 300));
e.Graphics.DrawString("Personal Data for " + txtFullName.Text, new Font("Lucida Calligraphy", 20, FontStyle.Regular), Brushes.Black, 5, 5);
e.Graphics.DrawImage(img, 5, 70);
e.Graphics.DrawString(data, new Font("MS Reference Sans Serif", 20, FontStyle.Bold), Brushes.Black, 5, 420);
}
}
这有效,但我想知道是否有更好的方法来打印整个面板。