删除gridview中的其他列时,templateField Control将丢失

时间:2018-01-29 13:02:18

标签: c# asp.net gridview

我有一个gridview:

<asp:GridView ID="grdData" OnRowCreated="GridData_RowCreated" runat="server" DataKeyNames="ID" AutoGenerateColumns="false" OnRowDataBound="grdData_RowDataBound">

      <Columns>
             <asp:TemplateField>
               <HeaderTemplate>
              <asp:CheckBox ID="chkAll" AutoPostBack="true" OnCheckedChanged="OnCheckedChanged" runat="server" />
               </HeaderTemplate>
                  <ItemTemplate>
               <asp:CheckBox ID="editbtn" AutoPostBack="true" OnCheckedChanged="OnCheckedChanged" runat="server" />
                         </ItemTemplate>
                </asp:TemplateField>
       </Columns>
                </asp:GridView>

如果我正在尝试更改gridview,即当我删除除现有模板字段之外的其他列时,模板字段将变为空:

int grdCount = grdData.Columns.Count;
            for (int i = 1; i < grdData.Columns.Count; i++)
            {
                grdData.Columns.RemoveAt(1);
            }

如何在删除gridview中的其他列时维护templateField Control。

请建议。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

  

//删除列后必须绑定网格视图。

public void bindGridData()
{
  //Add your logic here which binds your grid.
   grdData.Databind();
}
  

//从网格中删除列后,必须调用上面的方法   图。

bindGridData();