以编程方式向数据网格添加复选框时出错

时间:2013-08-08 21:24:02

标签: c# datagridview webforms

使用此代码时:

GridView1.Columns.Add(new TemplateField());
BoundField b = new BoundField();
GridView1.Columns.Add(b);
b.DataField = "ID";

//Add checkbox
GridView1.DataSource = dt;
DataGridViewCheckBoxColumn doWork = new DataGridViewCheckBoxColumn();
doWork.HeaderText = "Include Dog";
doWork.FalseValue = "0";
doWork.TrueValue = "1";
GridView1.Columns.Insert(0, doWork);

GridView1.DataBind();

添加DataGridViewCheckBoxColumn以外的任何列都没有问题,我收到此错误消息:

  

参数2:无法从'System.Windows.Forms.DataGridViewCheckBoxColumn'转换   到'System.Web.UI.WebControls.DataControlField'

2 个答案:

答案 0 :(得分:2)

正如错误消息所示:DataGridViewCheckBoxColumn是一个Windows窗体控件。您无法将其添加到Web表单DataGrid。

查看错误消息中的命名空间:

  

无法从' System.Windows.Forms .DataGridViewCheckBoxColumn'转换为' System.Web.UI.WebControls .DataControlField'

答案 1 :(得分:0)

这将适用于datagrid视图:

GridView1.Columns.Add(doWork);

还有另一种方法:

Gridview1.Columns.Add(doWork, "Include Dog");

允许您在添加标题时定义标题