DOBON.NET DOBON.NETプログラミング掲示板過去ログ

ToolStripButtonのChecked時の外枠非表示

環境/言語:[VisualC# 2010 Express]
分類:[.NET]

ToolStripButtonのDisplayModeをTextにして、
CheckOnClickをTrueにし、
Checked_Changedで、TextのforecolorをGlayとBlackの間で切り替えています。
そうすると、TextをClickするたびに、Textの色が変わり、
視覚的にOnOffを感じ取りやすいです。

ただ、この場合、Checkedのときに表示される水色の外枠が邪魔になります。
Checkedのときに表示される水色の外枠をCheckedのときも非表示にする方法はありませんでしょうか。

VisualC# 2010 Express
Windows 7
一番簡単なのは、
・ProfessionalColorTableから派生するクラスCustomColorTableを定義する。
・CustomColorTableのButtonSelectedBorderをオーバーライドし、Color.Transparentを返させる。
・目的のToolStripのRendererまたはToolStripManager.Rendererに、new ToolStripProfessionalRenderer(new CustomColorTable())を設定する。
というものでしょうか。
マウスオーバー等での枠も消えますが。
■No32429に返信(Hongliangさんの記事)
> 一番簡単なのは、
> ・ProfessionalColorTableから派生するクラスCustomColorTableを定義する。
> ・CustomColorTableのButtonSelectedBorderをオーバーライドし、Color.Transparentを返させる。
> ・目的のToolStripのRendererまたはToolStripManager.Rendererに、new ToolStripProfessionalRenderer(new CustomColorTable())を設定する。
> というものでしょうか。
> マウスオーバー等での枠も消えますが。

hongliangさんのアドバイスをヒントに検索をかけ、
http://www.sakai.zaq.ne.jp/script/cs/colortable/cs_colortable_001.html
を見つけました。
このサイト通りにしたら自在に色を変えられることができるようになりました。

ありがとうございました。

また、キーボードのグローバルフックCSファイル、使わせてもらっています。
そちらもありがとうございます。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板