daneshmand1
سه شنبه 03 آبان 1390, 09:23 صبح
سلام
من برای پرینت گرفتن از اطلاعات دیتاگرید از کد زیر استفاده می کنم ولی فقط از ردیف 0 تا 43 گرید پرینت می گیره و در صفحه دوم دوباره همین ردیف ها رو تکراری میاره، مشکل این کد کجاست؟
private void button2_Click_1(object sender, EventArgs e)
{
if (printDialog1.ShowDialog() != DialogResult.Cancel)
{
curRow = 0;
this.printDocument1.Print();
}
}
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
// A4: 827 * 1169
int ii = datagrid1.RowCount - 1;
SolidBrush b = new SolidBrush(Color.Black);
Font f = new Font("tahoma", 5);
int i = 0;
Font fheather = new Font("tahoma", 14);
e.Graphics.DrawString("نام", fheather, b, 600, 0);
e.Graphics.DrawString("نام خانوادگی", f, b, 750, 50 + i * 25);
int x = i + 1;
if (ii != 0)
{
while (i < ii)
{
e.Graphics.DrawString(dgvtahghigh.Rows[i].Cells[0].Value.ToString(), f, b, 750, 50 + x * 25);
e.Graphics.DrawString(dgvtahghigh.Rows[i].Cells[1].Value.ToString(), f, b, 700, 50 + x * 25);
i++;
x++;
curRow++;
}
e.HasMorePages = curRow < dgvtahghigh.Rows.Count;
}
{
من برای پرینت گرفتن از اطلاعات دیتاگرید از کد زیر استفاده می کنم ولی فقط از ردیف 0 تا 43 گرید پرینت می گیره و در صفحه دوم دوباره همین ردیف ها رو تکراری میاره، مشکل این کد کجاست؟
private void button2_Click_1(object sender, EventArgs e)
{
if (printDialog1.ShowDialog() != DialogResult.Cancel)
{
curRow = 0;
this.printDocument1.Print();
}
}
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
// A4: 827 * 1169
int ii = datagrid1.RowCount - 1;
SolidBrush b = new SolidBrush(Color.Black);
Font f = new Font("tahoma", 5);
int i = 0;
Font fheather = new Font("tahoma", 14);
e.Graphics.DrawString("نام", fheather, b, 600, 0);
e.Graphics.DrawString("نام خانوادگی", f, b, 750, 50 + i * 25);
int x = i + 1;
if (ii != 0)
{
while (i < ii)
{
e.Graphics.DrawString(dgvtahghigh.Rows[i].Cells[0].Value.ToString(), f, b, 750, 50 + x * 25);
e.Graphics.DrawString(dgvtahghigh.Rows[i].Cells[1].Value.ToString(), f, b, 700, 50 + x * 25);
i++;
x++;
curRow++;
}
e.HasMorePages = curRow < dgvtahghigh.Rows.Count;
}
{