misc.log

日常茶飯事とお仕事と

DataGridViewのコンボボックスセル背景色を変えたい

自分用メモです。

C#で、DataGridViewの列をコンボボックス列にした場合、セルの背景色を変えても無操作時の背景色は変わらず、ドロップダウン部分(下方などに展開される選択肢表示部分)だけに色が付いてしまう問題が発生。そういうものか……とおもいつつ調べてみたら設定等で回避可能でした。詳細は下記のstackoverflowの記事に記載されています。

stackoverflow.com

1つの方法は、コンボボックス列のFlatStyleプロパティを「Flat」に設定するというもの。このプロパティはDataGridViewの設定画面から変更可能で、初期状態では「Standard」になっています。これを「Flat」に変更すると、上手くいきました。

f:id:frontline:20190822125223p:plain
DataGridView、FlatStyleプロパティ

もう1つの方法は、DataGridViewの「CellPainting」と「EditingControlShowing」イベントに独自の描画処理を対応させ、自力で背景色などを塗ってしまおうというものですね。とりあえず前者のFlatStyleが楽なので、そちらを優先で考えようと思います。

既に列定義されているDataGridViewへのデータバインド

個人用メモ。

C#などで使うデータ表示用一覧表部品「DataGridView」で、列の見出しやセルタイプが既に定義されている状態に、DataGridView.DataSourceで表示用データをデータバインド設定する時の設定について触れているサイトがあったのでメモっておきます。

blog.syo-ko.com

ポイントは、各列の設定にある「DataPropertyName」プロパティ。それぞれの列が、データソースとなるDataSetやDataTableのどの列と対応するかを列名で指定します。この設定を行わないと、上記サイトに紹介されているように、既に定義されている列の右に、新しい列としてデータソースの列が追加されてしまいます。

実はこの手の設定あまり使ってなかったので、ちょっと調べてしまいました……というメモです。

新・標準プログラマーズライブラリ なるほどなっとく C#入門

新・標準プログラマーズライブラリ なるほどなっとく C#入門

名探偵ホームズ、Youtubeで見られます

宮崎駿監督のTVアニメ「名探偵ホームズ」が今Youtubeで配信されています。数話ずつの公開のようですが、なかなか見る機会がないので興味ある方は是非。本作品、全登場人物が犬という仕立てになっていて、ホームズ自身も犬です。

youtu.be

1984年に放送された本作品、主題歌はダ・カーポの「空からこぼれたSTORY」。OP映像はふんわりとしたアクションシーンの連続なのに、曲がゆったりとした綺麗なメロディというこのミスマッチも見所(笑)。

見てるうちに犬でも人でもどうでもよくなるこの作品、子供向け番組としてもクオリティ高いので是非。

30TH ANNIVERSARY ダ・カーポ ベストアルバム ありがとう

30TH ANNIVERSARY ダ・カーポ ベストアルバム ありがとう