[英]How to send Gridview by eMail
我已經在C#.Net(桌面應用程序)中創建了GridView。 現在,我想通過郵件將此Gridview發送給用戶。
請告訴我如何實現此目的(通過將網格導出為HTML或其他方式?)。
我已經在下面嘗試過HTML,但是遇到了很多格式化問題。
dataGridView1.Rows[i].Cells[1].Value = data1.ToString();
dataGridView1.Rows[i].Cells[3].Value = data2.ToString();
mailBody.AppendFormat("<td>{0}</td>",data1.ToString() );
mailBody.AppendFormat("<td>{0}</td>", data2.ToString());
這樣做嗎...我有Gridview,它是通過編程方式生成的,沒有數據源,因此遇到了問題...
下面的技巧工作:) :)
DataTable dt = new DataTable();
foreach (DataGridViewColumn col in dataGridView1.Columns)
{
dt.Columns.Add(col.HeaderText);
}
foreach (DataGridViewRow row in dataGridView1.Rows)
{
DataRow dRow = dt.NewRow();
foreach (DataGridViewCell cell in row.Cells)
{
dRow[cell.ColumnIndex] = cell.Value;
}
dt.Rows.Add(dRow);
}
// StringBuilder myBuilder = new StringBuilder();
myBuilder.Append("<table border='1px' cellpadding='5' cellspacing='0' ");
myBuilder.Append("style='border: solid 1px Silver; font-size: x-small;'>");
myBuilder.Append("<tr align='left' valign='top'>");
foreach (DataColumn myColumn in dt.Columns)
{
myBuilder.Append("<td align='left' valign='top'>");
myBuilder.Append(myColumn.ColumnName);
myBuilder.Append("</td>");
}
myBuilder.Append("</tr>");
foreach (DataRow myRow in dt.Rows)
{
myBuilder.Append("<tr align='left' valign='top'>");
foreach (DataColumn myColumn in dt.Columns)
{
myBuilder.Append("<td align='left' valign='top'>");
myBuilder.Append(myRow[myColumn.ColumnName].ToString());
myBuilder.Append("</td>");
}
myBuilder.Append("</tr>");
}
myBuilder.Append("</table>");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.