- ベストアンサー
C#で背景色の設定 (0xFFC0DBなど)
データベースに登録されている値(0xFFC0DB)を使って、 テキストボックスの背景色を設定したいと思っています。 = Color.Pink; = Color.FromArgb(0xFF, 0xC0, 0xCB); などは出来るのですが、0xFFC0DBをそのまま(?)使った方法が分かりません... ご存じの方がいらっしゃいましたら、教えていただけないでしょうか? ---- int test; testColor = データベースの値; TextBox.BackColor = testColor;
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
#3間違えました orz int test; testColor = Convert.ToInt32("0xFFC0DB", 16); TextBox.BackColor = Color.FromArgb( testColor );
その他の回答 (3)
- AlexSuns
- ベストアンサー率67% (78/115)
これでいいのかな int test; testColor = Convert.ToInt32("0xFFC0DB", 16); TextBox.BackColor = testColor;
- redfox63
- ベストアンサー率71% (1325/1856)
Color.FromArgb(Int32)のオーバーロードをつかってやればいいのでは? TextBox.BackColor = Color.FromArgb( testColor ); といった具合ですが …
お礼
#3,4 のAlexSunsさんのコードを参考にさせて頂きました。 回答ありがとうございました。
- NYOI
- ベストアンサー率58% (56/96)
MSDNを参照すれば分かると思いますが、Colorのメソッドとしてはintのみを引数として色を返すものは用意されていません。 自前で色を返すメソッドを作成するしかないでしょう。
お礼
#3,4 のAlexSunsさんのコードを参考にさせて頂きました。 回答ありがとうございました。
お礼
AlexSunsさんのコードに、アルファチャネルの値を追加したところ、 うまく設定することが出来ました。 (もっといいやり方があるのかもしれませんが^^;) int testColor; testColor = Convert.ToInt32(データベースの値, 16); TextBox.BackColor = Color.FromArgb(0xFF, Color.FromArgb(testColor)); 回答ありがとうございました。