2012-06-03 46 views
0

我在rowcommand有一个很大的错误。我有一个命令名为“add”的按钮字段。当我点击它时,代码不会第一次触发,而是再次点击它,代码就会触发!rowcommand在第一次不工作

if (e.CommandName == "add") 
{ 
DataClassesDataContext db = new DataClassesDataContext(); 
int ii = int.Parse(e.CommandArgument.ToString()); 
int num = int.Parse(((TextBox)GridView1.Rows[ii].FindControl("TextBox2")).Text); 
     string id = GridView1.Rows[ii].Cells[0].Text; 
        temp t = new temp(); 
        t.tedad = num; 
        t.username = Session["username"].ToString(); 
        db.temps.InsertOnSubmit(t); 
        db.SubmitChanges(); 
} 

rowcommand在第一次点击时不会触发!

回答

0

我想通了这个问题,我使用的是GridView_RowCreated这是造成这个问题,而我用GridView_RowDataBound,这解决了我的问题。

或检查是否绑定了数据网格而不回发。

1

您应该在回发时将数据源绑定到GridView。

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
    GridView1.Datasource = DataTable1; 
    GridView1.DataBind(); 
    } 
}