2013-04-26 122 views
2

我正在收集數據並且一切正常,如果數據庫中的位是1,則檢查複選框,如果它是null0,則取消選中。asp.net GridView複選框不可點擊

但是,複選框似乎被禁用,我需要用戶能夠檢查框,它也會更新數據庫。

這裏是我的複選框:

<Columns> 
    <asp:CheckBoxField DataField="submitted" HeaderText="Submitted" ItemStyle-HorizontalAlign="Center" /> 
</Columns> 

我缺少的東西,使這個複選框,點擊?

回答

1

您需要將GridView置於編輯模式以檢查或取消選中CheckBox。有幾種方法可以做到這一點。這個簡單的可能是這個屬性添加到你的GridView的標記:

AutoGenerateEditButton="True" 

然後單擊獲取要修改的行中創建的編輯按鈕。

可以通過你的GridView的EditIndex設置爲所需的行索引*放置一個特定行進入編輯模式經由代碼隱藏:

yourGridViewID.EditIndex = 1; 
yourGridViewID.Databind(); 

* 我使用的「1」爲例以上,但您可以使用任何位於GridView.Rows集合範圍內的行索引

+0

感謝您的幫助,我採用了完全不同的方法,並使用了一個按鈕,因爲所有的框架工作已經在那裏,以便更快地添加按鈕。 – 2013-04-26 15:48:01

1

我想下面的文檔鏈接/引用可能會解釋您的問題。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.checkboxfield.aspx

複選框被禁用(只讀),直到數據綁定控件 顯示包含在編輯模式下的複選框的記錄。有關如何將記錄放入編輯模式的更多信息,請參閱 文檔,以獲取包含CheckBoxField 對象的父控件。

看到這個職位的處理最好的辦法......

https://stackoverflow.com/a/1951150/1246574

編輯

你還缺少你CheckBoxField字段代碼片斷runat="server"您發佈。

+0

實際上,您並不需要'runat =「server」',因爲它是服務器端數據庫的子元素控制(它是'GridView.Columns'集合的一部分)。 – jadarnel27 2013-04-26 15:08:50

+0

感謝您的幫助,我採用了完全不同的方法,並使用了一個按鈕,因爲所有的框架工作已經在那裏,以便更快地添加按鈕。 – 2013-04-26 15:47:42