如果行可见,则更改gridview中每第二行的背景

时间:2016-09-14 11:11:19

标签: c# asp.net gridview

我有一个gridviewRowDataBound我使用此代码更改每一行的背景,以便更好地阅读gridview

 if (e.Row.RowIndex % 2 != 0)
            {
                e.Row.BackColor = System.Drawing.ColorTranslator.FromHtml("#f2f2f2");
            }

之后,我使用dropdown仅显示gridview的相关行,并隐藏(visible = false)我不想显示的行。 rownumber不会改变,因此不同背景现在每隔一行不匹配。

现在我想要获得只有可见行的rownumbers来改变每一行的颜色。感谢

2 个答案:

答案 0 :(得分:4)

尝试gridView的AlternatingRowStyle属性。

https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.alternatingrowstyle(v=vs.110).aspx

有关msdn的文档,可帮助您入门。

答案 1 :(得分:1)

您可以使用Alternate table row color using CSS?中提到的CSS技术:

.alternatingRows > tbody > tr:nth-child(even)
{
    background-color: #f2f2f2;
}

样式类应用于GridView本身:

<asp:GridView ID="GridView1" runat="server" CssClass="alternatingRows" ... >