VB.NET2005です。
DataGridViewButtonColumnでセルの背景色は
Me.dataGridView1.DefaultCellStyle.BackColor = Color.Beige
で変更できるのですが、
ボタン自体の背景色を変更する方法を教えて下さい。
何卒よろしくお願い申し上げます。
セル自体の背景色は簡単に変わるのですが、
DataGridViewButtonColumnのボタン背景色を変更する方法が
どうしても分かりません。
何卒よろしくお願い致します。
基本機能としては用意されていないと思いますので、
おそらくは、自前で描画することになるかと。
ボタンセルのクラスを継承して、描画処理の部分を再実装するか、
DataGridView の CellPainting イベントで描画するか…。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200704/07040078.txt
さらに質問になりますが、
> ボタンセルのクラスを継承して、描画処理の部分を再実装するか、
> DataGridView の CellPainting イベントで描画するか…。
で仮に対応したとすると、すべての行のDataGridViewButtonColumnが
同じ背景色になってしまいますか?
私が実現したいことは、フォーカスのあるセル(
DataGridViewButtonColumn自体)の背景色のみ変更することです。
大事なことを書き忘れて本当に申し訳ありません。
可能ならどちらで出来そうですか?
お返事をお待ちしております。
何卒よろしくお願い致します。
> DataGridViewButtonColumn自体)の背景色のみ変更することです。
Paint メソッドで、
If CBool(elementState And DataGridViewElementStates.Selected) Then
などとして判定するとか。
> 可能ならどちらで出来そうですか?
やろうと思えば、どちらでも出来るかと思いますよ。
実際に試してみて、使いやすい方をどうぞ。
お返事ありがとうございます。
今、「方法 : Windows フォーム DataGridView コントロールのボタン列にあるボタンを無効にする」
http://msdn2.microsoft.com/ja-jp/library/ms171619(VS.80).aspx
のPaintメソッド辺りを参考に頑張っておりますが、
”背景色を変更する”事自体で悩んでいます。
ButtonRenderer.DrawButtonメソッドのGraphicsでコントロール
するということですか?
もう少しヒントを頂けますと助かります。
何卒よろしくお願い致します。
ツイート | ![]() |