VB.net DataGridViewで選択された行の色を変える方法

更新:2018.3.11

目次

選択された行の色を変える

事前に、データグリッドをリードオンリーにして、用意した処理からのみ、行の色が変わるようにする。

myDgv.ReadOnly = True

コードはこんな感じ。 クリックされたとき、前に選択されていた行の色を元に戻したいので、前に選んでいた行と色を変数に入れています。

Private BeforeBackColor As Color
Private BeforeForeColor As Color
Private BeforeSelectRow As Integer = -1

Private Sub DataGridView_CellContentClick(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles myDgv.CellContentClick
    Dim dgv As DataGridView = CType(sender, DataGridView)
    If dgv.Columns(e.ColumnIndex).Name = "ボタンカラム" Then
        If Me.BeforeSelectRow > -1 Then
            dgv.Rows(Me.BeforeSelectRow).DefaultCellStyle.BackColor = Me.BeforeBackColor
            dgv.Rows(Me.BeforeSelectRow).DefaultCellStyle.ForeColor = Me.BeforeForeColor
        End If
        Me.BeforeBackColor = dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor
        Me.BeforeForeColor = dgv.Rows(e.RowIndex).DefaultCellStyle.ForeColor
        Me.BeforeSelectRow = e.RowIndex
        dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.Blue
        dgv.Rows(e.RowIndex).DefaultCellStyle.ForeColor = Color.White
    End If
End Sub
IT関係関連記事

vmwareまとめ
2017/04/25








AccessSQL小技集
2017/05/04


これからブログなどのサイトを作りたいと思っている人は、お名前.comでのドメイン取得がオススメです。

■□━━ 急げ、ドメインは早い者勝ち! ━━□■
     ■お名前.com

アマゾンの2019年本屋大賞一覧

そして、バトンは渡された
ひと
ベルリンは晴れているか
熱帯
ある男

楽天市場のおすすめ商品一覧

お金2.0 新しい経済のルールと生き方 [ 佐藤航陽 ]
全部レンチン!やせるおかず 作りおき 時短、手間なし、失敗なし
「読む力」と「地頭力」がいっきに身につく 東大読書 [ 西岡 壱誠 ]