0

(C#) を使用してコード ビハインドにグリッドビューを入力します。[SO_Status] という列が 1 つあります。この列は最初は空です。ボタン送信!

ここに私のグリッドビューのキャプチャがあります: ここに画像の説明を入力

選択コードは次のとおりです。

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
    Int16 email;
    if ( e.CommandName == "Select")
    {
        email = Convert.ToInt16(e.CommandArgument);
        em.Text = GridView1.Rows[email].Cells[4].Text;
    }
}
public void Send_Click(object sender, EventArgs e)
{
    if (FileUploadControl.HasFile)
    {
        client.DeliveryMethod = SmtpDeliveryMethod.Network;
        client.Host = "smtp.gmail.com";
        client.Port = 587;
        ....
        try
        {
            client.Send(msg);
            ClientScript.RegisterClientScriptBlock(this.GetType(), "validation", "alert('Your Email was sent successfully!');", true);       
        }
        catch
        {
            Response.Write("Sent error");
        }
    }
}

選択ボタンを使用して行からメール アドレスを取得し、このメール アドレスにメールを送信します。このメールを送信した後に SO_Status を変更して、同じ人に再度メールを送信しないようにしたいです。

4

1 に答える 1

0

データベースの SO_Status を更新し、データベースからグリッドを再バインドする必要があります。

 protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        Int16 email;
        if ( e.CommandName == "Select")
        {
            email = Convert.ToInt16(e.CommandArgument);
            em.Text = GridView1.Rows[email].Cells[4].Text;
            //send the email
             if (Sendmail(em.Text))
             {
                updateStatus(em.Text);
                // rebind the grid. 
                bindgrid(); 
             }
             else
              {
               // write code to show error message.
              }
        }
    }






 private bool Sendmail( string email)
  {
    // code to send mail 
    // you can find the code on google.

   return returnvalue;
  }



 private void updateStatus(string email)
  {
    // Code to update db colomn
  }

   private void bindgrid()
  {
       // code to bind grid.
  }
于 2013-07-26T05:01:34.933 に答える