用途:C1TrueDBGrid中某些欄位如果符合判斷標準時需整個row變色 及 lock住該cell(無法編輯) 

關鍵1:FetchRowStyles 屬性
關鍵2:FetchRowStyle 方法
關鍵3:Columns("mycolumn").CellValue(e.Row)
關鍵4:e.CellStyle.ForeColor 
關鍵5:e.CellStyle.Locked

step 1. 先宣告 Me.tdgrid.FetchRowStyles = True

step 2.叫出FetchRowStyle方法(如下)  

 Private Sub tdgrid_FetchRowStyle(ByVal sender As Object,  _
          ByVal e As C1.Win.C1TrueDBGrid.FetchRowStyleEventArgs) Handles tdgrid.FetchRowStyle

        If Me.tdgrid.Columns("mycolumn").CellValue(e.Row).ToString.Trim.Length > 0 Then
            If Me.tdgrid.Columns("mycolumn").CellValue(e.Row).ToString.Trim = "N" Then
                e.CellStyle.ForeColor = System.Drawing.Color.Red  ' 欄位值為N的反紅
                e.CellStyle.Locked = True   ' 欄位值為N的不可編輯
            ElseIf Me.tdgrid.Columns("mycolumn").CellValue(e.Row).ToString.Trim >= 60 Then
                e.CellStyle.ForeColor = System.Drawing.Color.Blue
            ElseIf Me.tdgrid.Columns("mycolumn").CellValue(e.Row).ToString.Trim < 60 Then
                e.CellStyle.ForeColor = System.Drawing.Color.Gray
            End If
      End If
 End Sub

ps:mycolumn為grid的欄位名稱
arrow
arrow
    全站熱搜

    湯瑪的吳 發表在 痞客邦 留言(0) 人氣()