2012-02-07 17 views
0

我需要添加一個複選框控件insida a datatalbe。然後我把這個數據表綁定到gridview控件。 下面的代碼我用數據表內的複選框

Datatable dt=new Datatable(); 
dt.columns.add("Action"); 
dt.Rows.Add(typeof(CheckBox)); 
grdi1.datasource=dt; 
grid1.databind(); 

當我用這樣的代碼,在運行時,而不是領複選框我得到在指定的列 System.Web.UI.WebControls.CheckBox。

我需要實現獲取數據表中的複選框。

在此先感謝!

+0

嘗試添加新的'CheckBox'而不是'typeof(CheckBox)' – Hadas 2012-02-07 06:55:24

+0

使用在gridview中放置複選框控件的組合列。 – 2012-02-07 07:01:25

回答

2

當您將列添加到數據表時,您需要指定布爾類型列字段,在添加行時指定0或1。以下代碼可能工作。

DataTable dt = new DataTable(); 
    dt.Columns.Add(new DataColumn("Action", typeof(bool)));    
    dt.Rows.Add(0); 
    dt.Rows.Add(1); 
    GridView1.DataSource = dt; 
    GridView1.DataBind(); 
+0

非常感謝你,這是迄今爲止我見過的最簡單的解釋! – Bubo 2013-10-11 16:22:19

0

您可以使用模板列:

<ItemTemplate> 
    <asp:checkbox id="checkBox" runat="server" checked='<%# Eval("theColumn") %>' /> 
</ItemTemplate> 

上面的代碼僅適用於單向綁定。你必須自己從複選框中獲取值。