2013-04-23 111 views
0

我有一個由代碼隱藏代碼更新的GridView,通過在TextBox中輸入文本並計時按鈕來更新SQL源代碼。我一直在尋找如何在更新SQL源之後更新GridView,但我沒有找到答案。我對按鈕的代碼點擊和SQL源的變化是:asp.net的代碼隱藏更新gridview

protected void btnSubmit_Click(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     sqlSource.InsertParameters["x"].DefaultValue = User.Identity.Name.ToString(); 
     sqlSource.InsertParameters["y"].DefaultValue = ((TextBox)this.FindControl("abc")).Text; 
     sqlSource.InsertParameters["z"].DefaultValue = DateTime.Now.ToString(); 
     sqlSource.Insert(); 
    } 
} 

我怎麼加入這個功能,所以在按下按鈕時,GridView的更新?

+3

gridView1.DataBind(); – 2013-04-23 20:31:39

+2

這段代碼看起來好像永遠不會執行(爲什麼如果它不是PostBack,你會進入Button的click事件)? – jadarnel27 2013-04-23 20:35:45

+0

你剛在RowUpdating事件結束後重新綁定了網格 – briskovich 2013-04-23 20:37:51

回答

2

按鈕點擊ASP.NET需要總是回發。你就像頁面加載事件一樣編寫代碼。

並從代碼寫入綁定gridview。

gridview1.datasource = sqlSource;
gridview1.Databind();

+0

我看不到它是否工作,因爲我的User.Identity.Name.ToString()給出錯誤:執行當前Web請求期間發生未處理的異常。 (System.NullReferenceException:對象引用未設置爲對象的實例。)幫助? – user963070 2013-04-25 19:30:24

+0

註釋掉User.Identity之後,下一行發生同樣的事情。 – user963070 2013-04-25 19:57:31