<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="Email" HeaderText="Email" />
</Columns>
</asp:GridView>
<asp:Button ID="Button1" runat="server" Text="Send Email" OnClick = "SendEmail" />
protected void SendEmail(object sender, EventArgs e)
{
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
if ((row.FindControl("CheckBox1") as CheckBox).Checked)
{
string name = row.Cells[1].Text;
string email = row.Cells[2].Text;
MailMessage mail = new MailMessage();
mail.To.Add(email);
mail.From = new MailAddress("sender@gmail.com");
mail.Subject = "Shipping Details";
mail.Body = string.Format("Hello {0}, <br />This is a test email.<br />Thanks", name);
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Credentials = new System.Net.NetworkCredential("sender@gmail.com", "senderpass");
smtp.EnableSsl = true;
smtp.Port = 587;
smtp.Send(mail);
}
}
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[2] { new DataColumn("Name"), new DataColumn("Email") });
dt.Rows.Add("John", "john@111.com");
dt.Rows.Add("Jackson", "jackson@111.com");
dt.Rows.Add("Andrew", "andrew@111.com");
GridView1.DataSource = dt;
GridView1.DataBind();
}
}