C# 如何控制模板字段顺序
我有一个网格视图,其中列是通过代码C# 如何控制模板字段顺序,c#,asp.net,gridview,templatefield,C#,Asp.net,Gridview,Templatefield,我有一个网格视图,其中列是通过代码[AutoGenerateColumns=“false”]动态生成的,其中有一个模板字段,但我正在从ASPX创建另一个模板字段 如何控制这两个模板字段的顺序 例如,我需要首先从代码生成的TemplateField,然后从ASPX生成的TemplateField作为gridview中的第二个新行 TemplateField templateField = new TemplateField(); TemplateField uid = new TemplateFi
[AutoGenerateColumns=“false”]
动态生成的,其中有一个模板字段
,但我正在从ASPX创建另一个模板字段
如何控制这两个模板字段的顺序
例如,我需要首先从代码生成的TemplateField
,然后从ASPX生成的TemplateField
作为gridview中的第二个新行
TemplateField templateField = new TemplateField();
TemplateField uid = new TemplateField();
uid.HeaderText = "userid";
uid.ItemTemplate = new AddItemTemplate(ListItemType.Item, "userid");
GridView1.Columns.Add(uid);
for (int i = 0; i < dt.Columns.Count; i++)
{
BoundField boundField = new BoundField();
if (dt.Columns[i].ColumnName.ToString() != "userid")
{
boundField.DataField = dt.Columns[i].ColumnName.ToString();
boundField.HeaderText = dt.Columns[i].ColumnName.ToString();
GridView1.Columns.Add(boundField);
}
}
TemplateField TemplateField=new TemplateField();
TemplateField uid=新的TemplateField();
uid.HeaderText=“userid”;
uid.ItemTemplate=新的AddItemTemplate(ListItemType.Item,“用户ID”);
GridView1.Columns.Add(uid);
对于(int i=0;i
aspx代码
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<tr>
<td>
<div id="div<%# Eval("userid") %>" >
<asp:GridView ID="GridView2" AllowSorting="true" >
<Columns>
--code--
</Columns>
</asp:GridView>
</div>
</td>
</tr>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
--代码--
有什么方法可以控制这一点吗?而不是
GridView1.Columns.Add(boundField);
使用:
我认为模板feild的顺序是从aspx代码开始的。在aspx代码中将索引分配给模板字段后,动态生成的模板字段索引开始。
GridView1.Columns.Insert(0, boundField);