2009-05-26 123 views
1

我正在使用gridView。我有4个自动生成的列和1个由我自己生成的列。现在我已经生成的列首先显示,然后显示自动生成的列。 我想先显示自动生成的列,然后是我生成的列。更改列顺序

回答

0

为您需要知道数据字段(要绑定的数据项),并使用两种模板或boundcolumns来实现这一目标,如:

自动生成柱网

<asp:GridView id="gv" runat="server" AutoGenerateColumns="True"> 
</asp:GridView> 

手动生成柱网

<asp:GridView ID="gv" runat="server" AutoGenerateColumns="false"> 
    <Columns> 
     <asp:BoundField HeaderText="My First Column" DataField="myField1" /> 
     <asp:BoundField HeaderText="My Second Column" DataField="myField2" /> 
     <asp:BoundField HeaderText="My Third Column" DataField="myField3" /> 

     <asp:TemplateField HeaderText="My Fourth Column"> 
      <ItemTemplate> 
       <asp:Label ID="lbl" runat="server" Text='<%# Eval("myField4") %>' /> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

您可以使用一个BoundFi场的TemplateField,与模板,你可以做更多的事情,创造一个下拉列表,而不是一个标签,等等...在绑定列输出将永远是一个标签,你只能使用格式化字符串值像{0:d}的.NET命名

您有更多的预定义模板使用如复选框,按钮,超链接,命令和图像。

+0

我必须用户AutoGenerateColumns =“true”不为false。我需要自动生成。但也想手动生成。 – Waheed 2009-05-26 06:16:15