Google
 
Web itpro-blogger.blogspot.com
月曜日, 8月 11, 2008

[VB2005]DataGridのセルの色替え

▼質問
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






Comments: コメントを投稿

<< Home

This page is powered by Blogger. Isn't yours?