2012-09-20 50 views
0

我插入数据到数据库时,我单击提交按钮数据插入到数据库中但没有更改会反映在GridView中,而无需刷新页面。我也使用DataBind()。如何在每次插入命令后自动刷新gridview?

+0

看到这个http://stackoverflow.com/questions/7409339/refresh-gridview-after-adding-or-deleting-new-record-in- c-sharp – nKandel

+1

当你问这样的问题时,你应该显示一些代码。帮助一个合适的答案会容易得多。 – slfan

回答

1

只需使用该填充过程GridView然后调用该过程OnClick事件。

希望它有助于

0

您可以使用此代码 - 基于DataBind两次

诺塔:添加此DataBind已不只是在你的Page_Load而且在点击的代表

//Your Insert in your delegate 
.... 
YourGridView.DataBind(); 
0

你必须刷新你使用任何通过意味着GridView的数据源,例如SQL查询,然后设置数据源到这一点,然后用Gridview1.DataBind();

public void GetData() 
    { 
     try 
     { 
      SqlConnection connection = new SqlConnection(); 
      connection.ConnectionString = ConfigurationManager.ConnectionStrings["mysql"].ConnectionString; 
      String sql = "Your Query"; 
      DataSet ds = new DataSet(); 
      SqlDataAdapter da = new SqlDataAdapter(sql, connection); 
      da.Fill(ds); 
      DataTable dt = new DataTable(); 
      dt = ds.Tables[0]; 
      GridView1.DataSource = dt; 
     } 
     catch (SqlException ex) 
     { 
     } 
     catch (Exception e) 
     { 
     } 
    } 

然后,在绑定gridview(可能在您的页面加载事件)之前,只需使用GetData()。

2

就足以补充

YourGridView.DataBind(); 

在您的按钮onclick事件....没有必要也结合它在Page_Load中

你有任何的UpdatePanel?

0

您也可以在您的rowCommand:

gridView_RowCommand(object sender, GridViewCommandEventArgs e){ 
    gridView.EditIndex = -1; // to cancel edit mode 
} 
相关问题