• ベストアンサー

[C#]コントロールの背景色について

VS.net C#でプログラムを作ったところ、windows2000のPCではフォーム/コントロールが一部黒く塗りつぶされて表示されました。 開発環境のwindowsXPでは問題ありませんでした。 これは、色の機種依存ということなのでしょうか? とりあえずコントロールの背景色をWindowsシステムカラーからwebカラーに変更したところ、メニューバー以外は正常に表示されるようになりましたが、メニューバーだけはプロパティの背景色だけでは直りません。 この問題については、コントロールのプロパティで背景色を変更する以外に、何か解決策があるのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • gimmick
  • ベストアンサー率49% (134/270)
回答No.1

コントロールの色をシステムカラーで指定した場合、実行時に表示される色は実行環境に依存します。 この時に使用される色は、Windowsの画面のプロパティで指定された色になります。 それに対し、Webカラーで指定した場合は、実行時の色は実行環境に依存しません。 (厳密に同一とは言えませんが、ほぼ同じ色になるはず) とりあえず、Win2000のマシンの画面のプロパティを確認してはどうでしょうか?

ohnotellme
質問者

お礼

ありがとうございました。 なるほど、webカラーで統一すればよいということですね。 唯一正しく表示されないMenuBarについては、画面のプロパティをいじってもダメだったので、これはアプリの方の指定がまだwindowsシステムカラーになっているということかな。確認してみます。

すると、全ての回答が全文表示されます。

関連するQ&A