2013-04-06 33 views
1

我想将列标题“ 主题否”移到右侧。复选框列中不应有标题。如何移动GridView中的列标题

enter image description here

用于获取复选框的代码是这样;

protected void GridView1_DataBound(object sender, EventArgs e) 
{ 
    foreach (GridViewRow objRow in GridView1.Rows) 
    { 
     TableCell tcCheckCell = new TableCell(); 
     CheckBox chkCheckBox = new CheckBox(); 
     tcCheckCell.Controls.Add(chkCheckBox); 
     objRow.Cells.AddAt(0, tcCheckCell); 

    } 
} 

我用DataTable来获取数据到GridView。

如何将该柱头向右移?

谢谢。

+0

为您的Gridview发布标记(.aspx页面)代码。 – 2013-04-06 12:55:10

回答

0

您正在以错误的方式执行此操作,请注意您的右侧没有标题列。

而不是做你现在正在做什么,尽量简单地在最左侧添加一个新列,自己也没有标题文本,然后在第一列的ItemTemplate您插入CheckBox,这应该做的伎俩而不会以最简单的方式搞乱最终生成的表格。

+0

你能解释一下怎么做吗? – chathura 2013-04-06 11:49:23

0

GridView1_DataBound事件中缺少一个步骤;您迭代的行集合仅包含数据行,您还需要在标题行中添加一个新列。您的foreach循环之前插入下面一行,一切都会好起来:

GridView1.HeaderRow.Cells.AddAt(0, new TableCell()); 
0

要使头文本为空任何特定列,那么你可以使用 在ASP BoundFiled:网格视图,每个headet文本分配或使空。 Like

<asp:BoundField HeaderText="" DataField="SubjectNO" />