我想把daitagrid里面显示的数据按某个字段用颜色区分 ,例如里面有一个到期时间字段,大于当前时间的用一种颜色显示 小于当前时间的用另一种颜色显示,怎么实现

解决方案 »

  1.   

    VB语法
      Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound
            If e.Item.ItemIndex > -1 Then
                '**********下面根据判断突出显示颜色*****************************
                If Trim(e.Item.Cells(13).Text) = "N" Then '文件中心未确认
                    e.Item.BackColor = Color.LightGreen
                    'e.Item.ForeColor = Color.White
                End If            If Trim(e.Item.Cells(14).Text) = 0 Then '已经没有流程需要处理
                    e.Item.BackColor = Color.Orange
                End If            If Trim(e.Item.Cells(15).Text) = "Y" Then  '审批人要求退回
                    e.Item.BackColor = Color.Gray
                End If
            End If
        End Sub
      

  2.   

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    DataRowView row;
    if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 

    row = (DataRowView)e.Item.DataItem;
    if (Convert.ToDateTime(row["时间"]) > DateTime.Now)
    e.Item.BackColor = Color.White;
    else if (Convert.ToInt32(row["status"]) > 0)
    e.Item.BackColor = Color.Red;
    }
    }
      

  3.   

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    DataRowView row;
    if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 

    row = (DataRowView)e.Item.DataItem;
    if (Convert.ToDateTime(row["时间"]) > DateTime.Now)
    e.Item.BackColor = Color.White;
    else 
    e.Item.BackColor = Color.Red;
    }
    }