用户登录  |  用户注册
首 页源码下载网络学院最新源码源码排行屏蔽广告
当前位置:新兴网络 > 网络学院 > .Net技术 > .Net基础

.Net 根据DataGridView不同的记录设置背景颜色

减小字体 增大字体 作者:ajiefj  来源:本站整理  发布时间:2010-11-04 15:41:00

有时我们希望DataGridView在加载数据时,能够根据表记录中某些数据的值,做一个判断,根据判断的结果,将对应的记录显示成不同的背景颜色,例如我们希望学生信息表中如果是男生,则将性别显示成红色背景,如下图:

这可以通过自定义DataGridView控件的CellFormatting事件,来实现,具体代码如下:

注意因为DataGridView控件在显示数据时,会自动在表记录,末尾记录后天就一行空的记录,这时DataGridView1.Rows.Count等于表中实际记录个数+1,所以判断时,要防止DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value是空值,因此需要加上e.RowIndex < DataGridView1.Rows.Count - 1这个条件。当然了,也有其他的判断方法可以用。

 Private Sub DataGridView1_CellFormatting(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) Handles DataGridView1.CellFormatting
    If (e.RowIndex >= 0 And e.ColumnIndex >= 0 And e.RowIndex < DataGridView1.Rows.Count - 1) Then
        If (DataGridView1.Columns(e.ColumnIndex).Name = "性别") Then
            Dim sex As String = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value
            If Not IsDBNull(sex) Then
                If (sex.ToString() = "男") Then
                    e.CellStyle.BackColor = Color.Red
                End If
            End If
        End If
    End If
End Sub 
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
  • 差的评价 如果您觉得此文章差,就请您
      100%(1)

网络学院评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论