1

我正在开发一个 ASP.NET Web 应用程序,我想像国际象棋(垂直和水平)一样交替显示 gridview 单元格的颜色。颜色将是黄色和黑色。

4

2 回答 2

3

您可能想使用 GridView 的 RowDataBound 事件,如下所示:

   <asp:GridView ID="grid1" runat="server" AutoGenerateColumns="False" 
         DataSourceID="SqlDataSource1" OnRowDataBound="GridView1_RowDataBound">

   protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
   {
        if (e.Row.RowType != DataControlRowType.DataRow)
            return;

        for (int i = 0; i < e.Row.Cells.Count; i++)
        {
            TableCell Cell = e.Row.Cells[i];

            // if both row and column are odd, color then black
            // if both row and column are even, color then yellow
            if (((e.Row.RowIndex % 2 == 1) && (i % 2 == 1)) ||
                ((e.Row.RowIndex % 2 == 0) && (i % 2 == 0)))
                Cell.BackColor = Color.Black;
            else
                Cell.BackColor = Color.Yellow;
        }
    }
于 2013-02-22T18:41:34.873 回答
1

设置 ItemStyle 和 AlternatingItemStyle 属性,并指定 BackGroundColor 和 Color 属性。这些控制这些颜色。

于 2013-02-22T18:32:42.313 回答