VB(.net) Windows10 WinFormsのDataGridViewのカスタム
本記事では、下記の方法をまとめて記載いたします。(挙動はWindows10にて確認済の内容となります)
①DataGridViewのヘッダー背景色変更
②DataGridViewのヘッダー文字色変更
③DataGridViewのヘッダー・項目それぞれのフォント変更
④DataGridViewのヘッダー・項目それぞれの文字の寄せ方変更
変更前のコードと画面は以下の通り。
Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load DataGridView1.Columns.Add("col1", "漢字1") DataGridView1.Columns.Add("col2", "漢字2") DataGridView1.Rows.Add({"漢字3", 3}) DataGridView1.Rows.Add({"漢字4", 4}) End Sub End Class
変更用コードと変更後画面は以下の通り。
Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load DataGridView1.Columns.Add("col1", "漢字1") DataGridView1.Columns.Add("col2", "漢字2") DataGridView1.Rows.Add({"漢字3", 3}) DataGridView1.Rows.Add({"漢字4", 4}) '下記設定を行わないと、①と②の設定が反映されない DataGridView1.EnableHeadersVisualStyles = False '①DataGridViewのヘッダー背景色変更 DataGridView1.Columns().Item(0).HeaderCell.Style.BackColor = Color.Red '②DataGridViewのヘッダー文字色変更 DataGridView1.Columns().Item(1).HeaderCell.Style.ForeColor = Color.Green '③DataGridViewのヘッダー・項目それぞれのフォント変更 'ヘッダーのフォント変更 DataGridView1.Columns().Item(0).HeaderCell.Style.Font = New Font("MS 明朝", 8) DataGridView1.Columns().Item(1).HeaderCell.Style.Font = New Font("Meiryo UI", 15) '項目のフォント変更 DataGridView1.Columns().Item(0).DefaultCellStyle.Font = New Font("MS ゴシック", 15) DataGridView1.Columns().Item(1).DefaultCellStyle.Font = New Font("MS P ゴシック", 8) '④DataGridViewのヘッダー・項目それぞれの文字の寄せ方変更 'ヘッダーの寄せ方変更 DataGridView1.Columns().Item(0).HeaderCell.Style.Alignment = DataGridViewContentAlignment.TopLeft DataGridView1.Columns().Item(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.BottomLeft '項目の寄せ方変更 DataGridView1.Columns().Item(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter DataGridView1.Columns().Item(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.BottomRight 'ヘッダーの高さ変更 '下記のプロパティ変更を行わないと、ColumnHeadersHeightが正しく反映されない DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing DataGridView1.ColumnHeadersHeight = 100 End Sub End Class