列ヘッダの縦書き (位置調整)

DataGridView 列ヘッダの縦書き について調べると...

投稿者shu 様のソース

参考にさせて頂きました。

このままでは、列ヘッダの左上にヘッダ文字がひっついてしまいます。
⇒列ヘッダセル上端中央にヘッダ文字を表示させたい。
g.DrawString(DataGridView1.Columns(e.ColumnIndex).HeaderText, fnt, Brushes.Black, e.CellBounds, sf)
上記、「 e.CellBounds 」の箇所を「 e.CellBounds.X + 10, e.CellBounds.Y 」に置き換えることで横位置の
微調整ができることが分かった。("+10"とした所を適当な値にする)

--
例えば、「MSゴシック 9pt」 の場合

Dim  MOJI_WIDTH_OFFSET As Integer 
MOJI_WIDTH_OFFSET  = 7  ' "MSゴシック 9pt"の場合
g.DrawString(DataGridView1.Columns(e.ColumnIndex).HeaderText, fnt, Brushes.Black, e.CellBounds.X + CInt((DataGridView1.Columns(e.ColumnIndex).Width) / 2 - MOJI_WIDTH_OFFSET), e.CellBounds.Y, sf)

これにより、列ヘッダのセル上端中央にヘッダ文字を表示できた。