2012-06-03 3 views
0

나는 rowcommand에서 큰 실수를 저질 렀습니다. commandname이 "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을 사용하여 문제가 해결되었습니다.

또는 포스트가 아닌 DataGrid에 바인딩 중인지 확인하십시오.

1

포스트 백에서 데이터 소스를 Gridview에 바인딩해야합니다.

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