PDA

View Full Version : سوال: چاپ اطلاعات datagridview در یک برگه در stimul



vB.N3T
چهارشنبه 23 تیر 1395, 13:51 عصر
سلام دستان من اطلاعاتی در دیتاگرید دارم که میخام این اطلاعات رو در یک برگه a4 پرینت کنم
در حال حاضر وقتی اطلاعات رو به گزارش میفرستم . هر نام در یک ستون و ردیف چاپ میشه .شبیه عکس
چیکار میشه کرد که وقتی رسید ته برگه .صفحه بعدی نره و ادامشو در ستون کناری چاپ کنه
متشکرم

141438

این کدهایی ک نوشتم برای گزارشگیری

public DataTable GetContentAsDataTable(DataGridView dgv, bool IgnoreHideColumns = false)
{
try
{
if (dgv == null) return null;
if (dgv.ColumnCount == 0) return null;
DataTable dtSource = new DataTable();
foreach (DataGridViewColumn col in dgv.Columns)
{
if (IgnoreHideColumns & !col.Visible) continue;
if (col.Name == string.Empty) continue;
dtSource.Columns.Add(col.Name);
dtSource.Columns[col.Name].Caption = col.HeaderText;
}
if (dtSource.Columns.Count == 0) return null;
foreach (DataGridViewRow row in dgv.Rows)
{
DataRow drNewRow = dtSource.NewRow();
foreach (DataColumn col in dtSource.Columns)
{
drNewRow[col.ColumnName] = row.Cells[col.ColumnName].Value;
}
dtSource.Rows.Add(drNewRow);
}
return dtSource;
}
catch { return null; }
}

private void ambiance_Button_12_Click(object sender, EventArgs e)
{
try
{
var stiRpt = new StiReport();
stiRpt.Load(Application.StartupPath + @"\list_person_bedehkar.mrt");

var Ds = GetContentAsDataTable(dataGridView1);

dataGridView2.DataSource = Ds;
stiRpt.RegData("Dss", Ds);
stiRpt.Show();

}
catch (SqlException)
{
MessageBox.Show("عملیات گزارشگیری با مشکل رو به رو شده است", "پیغام", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

alireza4474
پنج شنبه 24 تیر 1395, 14:13 عصر
مشکل از کد هاتون نیست از طراحی هست که توی استیمول سافت کردین