月曜日, 8月 11, 2008
[VB2005]DataGridのセルの色替え
▼質問
DataGridのセルの色を替えたいんだけど・・・どうしたらできるの?
▼回答
DataGridTextBoxColumnを継承してオリジナルのクラスを作成すればできるよ。
細かいところは、次のサンプルを参照してくれ!!
DataGridのセルの色を替えたいんだけど・・・どうしたらできるの?
▼回答
DataGridTextBoxColumnを継承してオリジナルのクラスを作成すればできるよ。
細かいところは、次のサンプルを参照してくれ!!
Public Class DataGridCustomTextBoxColumn
Inherits DataGridTextBoxColumn
Private MyBackColor As Color = SystemColors.Window
Private MyForeColor As Color = SystemColors.WindowText
'/******************************************************************************/
' Paint処理
'/******************************************************************************/
Protected Overloads Overrides Sub Paint(ByVal g As Graphics, _
ByVal bounds As Rectangle, _
ByVal [source] As CurrencyManager, _
ByVal rowNum As Integer, _
ByVal backBrush As Brush, _
ByVal foreBrush As Brush, _
ByVal alignToRight As Boolean)
'基本クラスのPaintメソッドを呼び出す。
MyBase.Paint(g, bounds, source, rowNum, _
New SolidBrush(MyBackColor), _
New SolidBrush(MyForeColor), alignToRight)
End Sub
'''
''' コントロールの背景色を取得または設定します。
'''
'''コントロールの背景色を表す System.Drawing.Color。
Public Property BackColor() As Color
Get
Return MyBackColor
End Get
Set(ByVal value As Color)
MyBackColor = value
End Set
End Property
'''
''' コントロールの前景色を取得または設定します。
'''
'''コントロールの前景色を表す System.Drawing.Color。
Public Property ForeColor() As Color
Get
Return MyForeColor
End Get
Set(ByVal value As Color)
MyForeColor = value
End Set
End Property
End Class
■参考サイト
DataGrid内の特定のセルの色を変える: .NET Tips: C#, VB.NET, Visual Studio
http://dobon.net/vb/dotnet/datagrid/coloredcell.html