我正在尝试将一个datatable绑定到gridview上,但我已经在代码后台删除了一些自动生成的列。我有两个模板列,似乎当我在代码后台更改gridview并删除非模板列时,模板会失去其中的控件。
以以下内容为示例,"Header A"将继续可见,但是删除索引为2及以上的任何列后,"Header B"将消失。我在我的代码后台为网格创建列作为报告工具的一部分。如果我不删除这些列,似乎就没有问题。
以以下内容为示例,"Header A"将继续可见,但是删除索引为2及以上的任何列后,"Header B"将消失。我在我的代码后台为网格创建列作为报告工具的一部分。如果我不删除这些列,似乎就没有问题。
<asp:GridView ID="DataGrid1" runat="server" AutoGenerateColumns="false" AllowPaging="True" PageSize="10" GridLines="Horizontal">
<Columns>
<asp:TemplateField HeaderText="Header A" >
<ItemTemplate >
Text A
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
Header B
</HeaderTemplate>
<ItemTemplate>
Text B
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
For i = 2 To DataGrid1.Columns.Count - 1
DataGrid1.Columns.RemoveAt(2)
Next
编辑
根据我所了解的,这似乎是在更改网格时出现的问题。有没有人知道一个好的解决方法来重新初始化模板列或重新设置它们,以便在删除非模板列时模板不会被删除?