将复选框列添加到gridview

时间:2016-12-26 14:09:27

标签: c# asp.net gridview

我有一个显示来自SQL数据源(存储过程)的数据的gridview,我想为它添加一个checkboxex列,这是我的代码:

TemplateField field = new TemplateField();
field.HeaderText = "Exporter ?";
gv.Columns.Add(field);
CheckBox cb = new CheckBox();
cb.Visible = true;

问题是我不知道如何在我添加到gridview列的TemplateField中添加一个复选框。

2 个答案:

答案 0 :(得分:1)

1)将以下代码添加到GridView列。

 <asp:TemplateField HeaderText="CheckBoxColumn" Visible="False">
            <ItemTemplate>
                <asp:CheckBox ID="checkBox" runat="server"></asp:CheckBox>                   
            </ItemTemplate>
 </asp:TemplateField>

2)通过添加 OnRowDataBound 事件或仅通过GridView.Rows循环来动态显示复选框列

int indexOfCBColumn = 0;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
   e.Row.Cells[indexOfCBColumn].Visible = true;
}



foreach(GridViewRow row in GridView1.Rows) {
   if(row.RowType == DataControlRowType.DataRow) {
      row.Cells[indexOfCBColumn].Visible = true;
   }
}

谢谢!

答案 1 :(得分:0)

您可以将以下代码添加到GridView

<asp:templatefield HeaderText="Check Box">
    <itemtemplate>
        <asp:checkbox ID="cb" runat="server"></asp:checkbox>
    </itemtemplate>
</asp:templatefield>