我的GridView包含20个以编程方式添加的列(DataTable,DataColumn,DataRow和DataSet)。现在我需要插入一个复选框列作为最后一列(21 st 列)。我该如何添加它?
我尝试使用.aspx文件中常用的模板字段(来自设计标签)添加,但是添加了一个复选框作为第一列,不是作为最后一列。
答案 0 :(得分:2)
如果您使用GridView
绑定DataTable
,请在设置GridView
DataSource
之前执行此操作。
dataTable.Columns.Add("Select", Type.GetType("System.Boolean"));
DemoGrid.DataSource = dataTable;
DemoGrid.DataBind();
foreach (GridViewRow row in DemoGrid.Rows)
{
//check box is the first control on the last cell.
CheckBox check = row.Cells[row.Cells.Count - 1].Controls[0] as CheckBox;
check.Enabled = true;
}
在不相关的附注中,请注意您的asp:GridView
实际上是 AutoGenerated 。
答案 1 :(得分:0)
使用检查为列创建TemplateField,并在底部添加复选框作为footertemplate,然后打开通过GridView.ShowFooter = true显示页脚;页脚是放置这类常用控件的好地方。
如果页脚不是一个选项,常见的技巧是将空行数据绑定到UI,该UI将具有复选框。
HTH。