|
■No40697 (sskr さん) に返信
> 指定した列はDefaultCellStyle.Alignmentで設定できるのですが、
> (DataGridView1.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft)
> これをセル毎に指定することは可能でしょうか?
セル単位であっても列単位であっても、設定するべきは DataGridViewCellStyle クラスです。
DataGridView1(2, 3).Style.Alignment = 〜
なお、並び替えが発生する場合や、データ内容に応じて書式を変えたい場合には、
イベントで処理すると良いでしょう。
たとえば、数値が入力されたセルを右寄せ、それ以外が入力されたセルは右寄せとしたい場合、
CellFormatting イベントを用いて、以下のように記述する事ができます。
Private Sub DataGridView1_CellFormatting(sender As Object, e As DataGridViewCellFormattingEventArgs) _
Handles DataGridView1.CellFormatting
Dim d As Decimal
If Decimal.TryParse(CStr(e.Value), d) Then
e.CellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
Else
e.CellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
End If
End Sub
|