2013-04-02 78 views
2

- 基本上我想有一個複選框每行中,並且能夠擊中「提交」後,檢查了某些行,並有此更新到數據庫中,我有複選框中的一個TemplateField:複選框中,我有我的GridView的麻煩一個gridview

<asp:TemplateField HeaderText="Approve?"> 
    <ItemTemplate> 
    <asp:CheckBox ID="ckbxApprove" runat="server" /> 
    </ItemTemplate> 
    </asp:TemplateField> 

,並在代碼末尾:

protected void btnSubmit_OnClick(object sender, EventArgs e) 
{ 
foreach (GridViewRow oRow in GridView1.Rows) 
{ 
CheckBox bchecked = (CheckBox)oRow.FindControl("ckbxApprove"); 
    if (bchecked.Checked) 
    { 
//Do something 
    } 
} 
} 

但是,如果我在GridView中勾選框,並點擊提交按鈕,沒有任何的複選框被標記爲'Checked' 謝謝

回答

1

您的代碼看起來不錯,您可能會在page_load事件中的回發中再次綁定網格。這是失去控制狀態的常見原因之一是不會綁定IsPostBack塊中的控件。

if(!Page.IsPostBack) 
{ 
    // bind grid here 
} 
+0

謝謝你,謝謝你! – user2234552

+0

不客氣@ user2234552 – Adil