我有一个包含三列的"状态"集群。我想让头行张成这三个行。我知道我可以使用colspan="3"参数与HTML中的第th标签。我如何使用BoundField来实现这一点?
现在的样例代码片段…
<asp:BoundField DataField="Priority" HeaderText="Priority" />
<asp:TemplateField ItemStyle-Width="50">
<ItemTemplate>
<asp:ImageButton ID="btnMinus" CommandName="minus" runat="server" ImageUrl="~/Images/arrowUp_ico.gif" BorderWidth="1" BorderStyle="Ridge" />
<asp:ImageButton ID="btnPlus" CommandName="plus" runat="server" ImageUrl="~/Images/arrowDown_ico.gif" BorderWidth="1" BorderStyle="Ridge" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="ProjectName" HeaderText="Project" />
<asp:BoundField DataField="Group" HeaderText="Group" />
<asp:BoundField DataField="Assigned" HeaderText="Assigned" />
…等。
我需要标题文本'Priority'跨越本身和接下来的两列。
像往常一样,当需要很长时间才能得到答案时,我自己想办法。解决方案是转到init部分后面的代码(或等效的,取决于您的项目)并添加两行…
myDataGrid.HeaderRow.Cells[n].ColumnSpan = 2;
MyDataGrid.HeaderRow.Cells[n+1].Visible = false;
将第一个标题单元格(n)扩展为两列宽,并删除相邻的单元格。如果你省略了第二行,那列的标题就会被推到右边。