2009-06-26 75 views

回答

4

只需将您的列定义添加到gridview的部分即可。你的自动生成的列应该显示在这个列的左边。

<asp:gridview AutoGenerateColumns="true" ... > 
    <columns> 
     <asp:hyperlink ... /> 
    </columns> 
</asp:gridview> 
+0

感谢。这将是HyperLinkField不是常规的超链接控件,它会给出错误。 – 2009-06-26 22:08:46

2

我发现自动生成的列显示在右边。如果你想他们是在左边,你必须将代码添加到其删除和RowCreated事件重新添加所有列,就像这样:

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) 
    { 
     GridViewRow row = e.Row; 
     List<TableCell> columns = new List<TableCell>(); 

     foreach (DataControlField column in GridView1.Columns) 
     { 
      TableCell cell = row.Cells[0]; 
      row.Cells.Remove(cell); 
      columns.Add(cell); 
     } 

     row.Cells.AddRange(columns.ToArray()); 
    } 

找到的文章在这里:http://geekswithblogs.net/dotNETvinz/archive/2009/06/03/move--autogenerate-columns-at-leftmost-part-of-the-gridview.aspx