C# 在gridview中,如何仅在交替行上显示数据
如何仅在gridview中的交替行上显示数据。我需要保留奇数行:1,3,5,7,等等。。。空白。您可以选择不以这种方式显示数据 加价C# 在gridview中,如何仅在交替行上显示数据,c#,asp.net,gridview,C#,Asp.net,Gridview,如何仅在gridview中的交替行上显示数据。我需要保留奇数行:1,3,5,7,等等。。。空白。您可以选择不以这种方式显示数据 加价 <asp:GridView ID="SimpleGrid" runat="server" AutoGenerateColumns="false" AlternatingRowStyle-BackColor="Gray" AlternatingRowStyle-Height="10px" RowStyle-Height="10p
<asp:GridView ID="SimpleGrid" runat="server"
AutoGenerateColumns="false"
AlternatingRowStyle-BackColor="Gray"
AlternatingRowStyle-Height="10px"
RowStyle-Height="10px">
<Columns>
<asp:TemplateField HeaderText="Demo">
<ItemTemplate><%# Container.DataItem %></ItemTemplate>
<AlternatingItemTemplate></AlternatingItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我猜您是在要求使用
Gridview行索引
来显示交替行。使用onrowdabund
事件Gridview
protected void gridview_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.RowIndex % 2 != 0)
{
// do whatever you want with your odd rows
}
else
{
// do whatever you want with your Even rows
}
}
}
好的,经过进一步的研究,我决定使用一个转发器(更多的渲染控制)。我提到了这个帖子: 我的代码:
<ItemTemplate>
<tr class="rowcontent">
<td> </td>
<td class="dashline"> </td>
<td class="dashline"> </td>
<td class="dashline"> </td>
</tr>
<tr>
<td class="content4"><%# DataBinder.Eval(Container.DataItem, "Rank") %></td>
<td class="alternatingrow"><%# DataBinder.Eval(Container.DataItem, "InnCode") %></td>
<td class="alternatingrow"><%# DataBinder.Eval(Container.DataItem, "HOTEL_NAME") %></td>
<td class="alternatingrow"><%# DataBinder.Eval(Container.DataItem, "ENROLLMENT_PERCENTAGE") %>%</td>
</tr>
</ItemTemplate>
%
这不是他们的要求,他们要求只将数据填入偶数行。使奇数行不可见不是OP要求的。他问“我如何仅在交替行上显示数据”。他们还说:我需要保留奇数行:1、3、5、7等。。。空白。这澄清了他们所说的,行仍然是可见的,但里面没有数据。我猜也许我误解了这个问题,我会更新ansRight Draken,我希望空白行显示。这是我为gridview.naveen提供的设计-我只需要AlternatingItemTemplate中的数据。我尝试了与您的示例相反的方法,只将数据项放在AlternatingItemTemplate中,它为我提供了每隔一行(甚至是每一行)的数据。我以为您在数字中使用的是从零开始的索引哦,您希望所有数据都存在,并且一行为空。是的,naveen。对不起,我说得不清楚。这是UI设计器可视化设置的方式。
protected void gridview_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.RowIndex % 2 != 0)
{
// do whatever you want with your odd rows
}
else
{
// do whatever you want with your Even rows
}
}
}
<ItemTemplate>
<tr class="rowcontent">
<td> </td>
<td class="dashline"> </td>
<td class="dashline"> </td>
<td class="dashline"> </td>
</tr>
<tr>
<td class="content4"><%# DataBinder.Eval(Container.DataItem, "Rank") %></td>
<td class="alternatingrow"><%# DataBinder.Eval(Container.DataItem, "InnCode") %></td>
<td class="alternatingrow"><%# DataBinder.Eval(Container.DataItem, "HOTEL_NAME") %></td>
<td class="alternatingrow"><%# DataBinder.Eval(Container.DataItem, "ENROLLMENT_PERCENTAGE") %>%</td>
</tr>
</ItemTemplate>