单击数据网格视图的按钮列,自动将邮件发送到邮件id

本文关键字:id 网格 数据网 数据 视图 按钮 单击 | 更新日期: 2023-09-27 18:07:19

我有一个三列和一个按钮列的数据网格视图。我的目标是,我想发送一个自动电子邮件到指定的邮件id,当我点击按钮列的数据网格视图的按钮。

是否可以这样做,如果我点击按钮列,邮件将发送到这个邮件id: abc@shx.com ?

相应的行值将附加到邮件正文。

  1. 处理点击事件(按钮列点击事件)..
  2. 查找相应的行值并附加到邮件正文
  3. 发送电子邮件到给定的邮件id(如果我点击按钮列(只在按钮上))
有谁能给我一些建议吗?我正在用c#做WinForms应用程序。

EDIT:

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
{ 
    if (e.ColumnIndex != 3) 
        return; 
    object col1 = dataGridView1.Rows[e.RowIndex].Cells[0].Value; 
    object col2 = dataGridView1.Rows[e.RowIndex].Cells[1].Value; 
    object col3 = dataGridView1.Rows[e.RowIndex].Cells[2].Value; 
} 

但是我不知道如何获取行值和发送电子邮件。

单击数据网格视图的按钮列,自动将邮件发送到邮件id

在您的示例中,您已经获得了与被单击的行对应的行值:

object col1 = dataGridView1.Rows[e.RowIndex].Cells[0].Value; 
object col2 = dataGridView1.Rows[e.RowIndex].Cells[1].Value; 
object col3 = dataGridView1.Rows[e.RowIndex].Cells[2].Value;

就在。net中发送电子邮件而言,可以使用SmtpClient类。以下是Gmail的示例:

var client = new SmtpClient("smtp.gmail.com", 587);
client.EnableSsl = true;
client.Credentials = new NetworkCredential("youraccount@gmail.com", "secret");
var mail = new MailMessage();
mail.From = new MailAddress("youraccount@yahoo.com");
mail.To.Add("destaccount@gmail.com");
mail.Subject = "This is the subject of the mail";
mail.Body = "This is the body of the mail";
client.Send(mail);

当然你应该调整你的Smtp服务器配置来匹配你的设置。