[C#]systemcolorを使う

投稿日:2018-06-18

ボタンとかを作成した時に、BackColorとかにデフォルトで設定される色を変更したいけど、何かのアクション以外は、デフォルト職を使いたい。

って時に多分使える。

SystemColorsクラス(Microsoft)

システムの表示要素に対応したシステム カラー、システム ブラシ、およびシステム リソース キーが含まれています。

ざっくり言うと、Windowsのデフォルトで設定される色ってことでいいのかな。

普通に、色を設定しようとすると、オブジェクトのプロパティから色を設定する。

カラーパレットから選ぶなら、そのまま選べる。

リストから選んでも良い。

元の色に戻したいなら、システムタブを選んで、そのリストから選ぶ。

コードで書くなら、

	TextBox1.BackColor = Color.Red;

見たいな感じで書くけど、じゃあ、デフォルトに戻したい時ってどうするん?って。

その時はSystemColorsを使う。

	TextBox1.BackColor = SystemColors.Control;

で。

これで、入力ミスで警告色(赤色とか)にしたけど、元に戻せるw







-C#, 開発メモ

関連記事

TortiseSVNなんだけど、自分が原因で「already locked」が出てしまった時の対処法。自分がロックを取ってて、ロックが取れずコミットが出来ない事態に遭遇した・・・

SVNを使っていると、たまにありますね。 ロックが既に誰かに取得されていて、コミットしようとした時に、唖然とするやつ。 ただ、今回は状況が違いました。 いつもなら、「ロック取ってるやつ誰だよ~」って感 …

C# OracleDbAccessを使用して、SQL実行時にORA-00911 文字が無効です のエラー

表題のとおり、C#でOracleDbAccessを使用して、SQLを実行させる時に発生しました。 ネットで探すと、 全角スペースが原因 とか出てきたので、SQL内のスペースを全て半角スペースに置き換え …

Excelでシートをコピーする時に、「名前が既に存在します。」と言われるのを回避して、Excel出力を早くしたい。

結論から書いてしまうと、名前の重複を削除しても、Excelの出力は別に早くならなかった。 早くなるという意味だと、手動でシートをコピーした時に、いちいちダイアログの対応をしなくて済むので、自分で作業し …

WindowsのコマンドプロンプトでUnicodeを扱おうとして挫折した。

WindowsのコマンドプロンプトでUnicodeのファイル名を扱うためのバッチファイルをどうたらこうたら。 http://daily-misc.blogspot.jp/2014/12/windows …

VisualStudioでデータテーブルの中身確認できるの便利すぎワロタw

DataSetビジュアライザーで、DataTableの中身が確認できるのが便利すぎたのでメモ。 データテーブルって気軽に使えるけど、中身の確認がしち面倒くさい件 本当のところはどうなのか?ってのは知ら …


カテゴリー