我有一个gridview,它应该允许行处于编辑模式。这或多或少取消了我认为的转发器的使用。
问题是,标题是“特殊的”。它应该有多行,其中一些单元格跨越多列。一个例子:
| availability monitoring | monitoring | | colu 1 | colu 2 | colu 3 | col 4 | col 5 |
(1
,2
和3
是可用性的一部分,通常监控的4
和5
请记住,我想到的标题中有4行。
有没有办法通过允许编辑的选项来实现这种标题?
答案 0 :(得分:2)
如果您使用的是ASP.NET 3.5,则可能需要查看新的ListView控件。 它结合了GridView的功能和Repeater或DataList的功能。
答案 1 :(得分:1)
首先将要控制的列放入模板化列中。然后你可以在那里找到任何你想要的东西 - 表格,文本框,复选框等等。
<HeaderTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text=''></asp:TextBox>
<asp:CheckBox ID="CheckBox1" runat="server" />
</HeaderTemplate>
然后您可以在RowDataBound事件中进一步控制:
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType != DataControlRowType.Header)
return;
// let the third column span over the next 2 columns.
e.Row.Cells[2].ColumnSpan = 3;
e.Row.Cells[3].Visible = false;
e.Row.Cells[4].Visible = false;
// could span more than 1 row.
e.Row.Cells[2].RowSpan = 2;
等...
您可以完全控制标题部分。