C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■94174 / 1階層)  カラーコード(文字列)から色に変換したい
□投稿者/ 魔界の仮面弁士 (2627回)-(2020/03/23(Mon) 19:33:38)
2020/03/23(Mon) 21:07:15 編集(投稿者)

掲示板投稿時に、『半角カナは使用しないでください。文字化けの原因になります。』という
注意書きが表示されていたかと思います。次回以降、ご留意ください。


No94172 (あい さん) に返信
> DBデータをDataGridViewで取得して表示しているのですが、カラーコード(例:#FFFFF)がそのまま表示している状態です。
> これをカラーコードではなく色に変換して表示したいと考えております。

"#FFFFF" ということは 5 桁ですか? ちょっと中途半端ですね。

Color と 16進数コードの変換には、ColorConverter クラスまたは ColorTranslator クラスを使えます。


Private Sub DataGridView1_CellFormatting(sender As Object, e As DataGridViewCellFormattingEventArgs) Handles DataGridView1.CellFormatting
  If e.RowIndex < 0 Then
    Return
  End If

  'データバインド先の行を取り出します。
  Dim gridRow = DirectCast(sender, DataGridView).Rows(e.RowIndex)
  Dim rowView = TryCast(gridRow.DataBoundItem, DataRowView)
  If rowView Is Nothing Then
    Return
  End If

  'mst_color テーブルから、現在行の BACKCOLOR 列の値を取り出します。
  Dim oColor As Object = rowView("BACKCOLOR")
  If oColor Is Nothing OrElse oColor Is DBNull.Value Then
    Return
  End If


  'HTML カラー表記とみなして、Color 構造体に変換しています。
  Dim newBackColor = ColorTranslator.FromHtml(CStr(oColor))

  '透明度指定のある色だと扱いにくいので、
  'ここではあえて不透明に変更しています。
  newBackColor = Color.FromArgb(255, newBackColor)

  '文字色も背景色も同じ色にしてみました。
  '必要に応じて、文字色や選択色を調整してください。
  With e.CellStyle
    .SelectionBackColor = newBackColor
    .BackColor = newBackColor
    .SelectionForeColor = newBackColor
    .ForeColor = newBackColor
  End With
End Sub
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←カラーコード(文字列)から色に変換したい /あい →Re[2]: カラーコード(文字列)から色に変換したい /あい
 
上記関連ツリー

カラーコード(文字列)から色に変換したい / あい (20/03/23(Mon) 17:24) #94172
カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/23(Mon) 19:33) #94174 ←Now
  └ Re[2]: カラーコード(文字列)から色に変換したい / あい (20/03/24(Tue) 08:53) #94179
    └ Re[3]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/24(Tue) 08:56) #94180
      └ Re[4]: カラーコード(文字列)から色に変換したい / あい (20/03/24(Tue) 10:02) #94181
        └ Re[5]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/24(Tue) 10:39) #94183
          └ Re[6]: カラーコード(文字列)から色に変換したい / あい (20/03/24(Tue) 13:38) #94188
            └ Re[7]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/24(Tue) 14:14) #94190
              └ Re[8]: カラーコード(文字列)から色に変換したい / あい (20/03/24(Tue) 15:17) #94191
                └ Re[9]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/24(Tue) 16:07) #94193
                  ├ Re[10]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/24(Tue) 16:19) #94195
                  └ Re[10]: カラーコード(文字列)から色に変換したい / あい (20/03/24(Tue) 16:16) #94194
                    └ Re[11]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/24(Tue) 16:40) #94198
                      └ Re[12]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 08:54) #94225
                        └ Re[13]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/26(Thu) 10:17) #94226
                          └ Re[14]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 10:32) #94227
                            └ Re[15]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/26(Thu) 10:47) #94228
                              └ Re[16]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 11:07) #94230
                                └ Re[17]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/26(Thu) 11:15) #94231
                                  └ Re[18]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 11:25) #94232
                                    └ Re[19]: カラーコード(文字列)から色に変換したい / 魔界の仮面弁士 (20/03/26(Thu) 11:36) #94233
                                      ├ Re[20]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 13:10) #94238
                                      └ Re[20]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 13:17) #94240 解決済み
                                        └ Re[21]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 13:19) #94241
                                          └ Re[22]: カラーコード(文字列)から色に変換したい / あい (20/03/26(Thu) 13:19) #94242 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信