?? datagridprogressbarcolumn.vb
字號:
Public Class DataGridProgressBarColumn
Inherits System.Windows.Forms.DataGridTextBoxColumn
Public Sub New(ByVal headerText As String, ByVal mappingName As String, ByVal width As Integer)
MyBase.HeaderText = headerText
MyBase.MappingName = mappingName
MyBase.Width = width
End Sub
Protected Overloads Overrides Sub Edit(ByVal source As System.Windows.Forms.CurrencyManager, ByVal rowNum As Integer, ByVal bounds As System.Drawing.Rectangle, ByVal isReadOnly As Boolean, ByVal instantText As String, ByVal cellIsVisible As Boolean)
'Do Nothing
End Sub
Protected Overloads Overrides Sub Paint(ByVal g As System.Drawing.Graphics, ByVal bounds As System.Drawing.Rectangle, ByVal source As System.Windows.Forms.CurrencyManager, ByVal rowNum As Integer, ByVal backBrush As System.Drawing.Brush, ByVal foreBrush As System.Drawing.Brush, ByVal alignToRight As Boolean)
Dim progressVal As Integer = CType(GetColumnValueAtRow(source, rowNum), Integer)
Dim percentage As Single = CType((progressVal / 100), Single)
'if the current row is this row, draw the selection back color
If Me.DataGridTableStyle.DataGrid.CurrentRowIndex = rowNum Then
g.FillRectangle(New SolidBrush(Me.DataGridTableStyle.SelectionBackColor), bounds)
Else
g.FillRectangle(backBrush, bounds)
End If
If percentage > 0.0 Then
' Draw the progress bar and the text
g.FillRectangle(New SolidBrush(Color.FromArgb(163, 189, 242)), bounds.X + 2, bounds.Y + 2, Convert.ToInt32((percentage * bounds.Width - 4)), bounds.Height - 4)
g.DrawString(progressVal.ToString() & "%", Me.DataGridTableStyle.DataGrid.Font, foreBrush, bounds.X + 6, bounds.Y + 2)
Else
'draw the text
If Me.DataGridTableStyle.DataGrid.CurrentRowIndex = rowNum Then
g.DrawString(progressVal.ToString() & "%", Me.DataGridTableStyle.DataGrid.Font, New SolidBrush(Me.DataGridTableStyle.SelectionForeColor), bounds.X + 6, bounds.Y + 2)
Else
g.DrawString(progressVal.ToString() & "%", Me.DataGridTableStyle.DataGrid.Font, foreBrush, bounds.X + 6, bounds.Y + 2)
End If
End If
End Sub
End Class
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -