0

我在程序中首先从 datadase 调用文本,然后将其发布到文本框中,然后对 textbos 中的文本进行更改,最后我需要在数据库中进行更改。当我点击保存按钮时的问题不会在文本框中进行更改,而只会在数据库上进行

namespace WebApplication4
{
    public partial class WebForm17 : System.Web.UI.Page
    {
         DATAACCESS aaa = new DATAACCESS();
         string  Dname = "Finding";

         protected void Page_Load(object sender, EventArgs e)
         {
              aaa = new DATAACCESS();
              TextBox2.Text= aaa.GetDoctext(Dname, 90);
         }

         protected void Button5_Click(object sender, EventArgs e)
         {

             string textboxvalue = Request.Form[TextBox2.UniqueID];
             aaa.savetext(textboxvalue, Dname, 90);
         }
    }
}
4

2 回答 2

3

您需要了解ASP.NET 页面生命周期-page_load将在任何按钮事件之前执行。

这意味着您仅在尝试从数据库加载后才保存到数据库。

于 2012-05-06T12:09:37.387 回答
1

您应该做的是仅在页面尚未回发时填充文本框:

namespace WebApplication4 
{ 
  public partial class WebForm17 : System.Web.UI.Page 
  { 
     DATAACCESS aaa = new DATAACCESS(); 
     string  Dname = "Finding"; 

     protected void Page_Load(object sender, EventArgs e) 
     {  
          aaa = new DATAACCESS(); 

          if(!IsPostBack)
          {
              TextBox2.Text= aaa.GetDoctext(Dname, 90); 
          }
     } 

     protected void Button5_Click(object sender, EventArgs e) 
     { 

         string textboxvalue = TextBox2.Text;
         aaa.savetext(textboxvalue, Dname, 90); 
     } 
  } 
} 
于 2012-05-06T12:32:07.277 回答