using System.Web.UI.WebControls;
WebColorConverter webcolor = new WebColorConverter();
Color c1 = Color.FromArgb(0xff, 0x00, 0x00);
string s = webcolor.ConvertToString(c1);
// ↑これだけで自動的に "#ff0000" という文字になります。
Color c2 = (Color)webcolor.ConvertToFrom("#ff0000");
// ↑これだけで自動的に "#ff0000" から Color を作ってくれます。
Color c3 = (Color)webcolor.ConvertToFrom("blue");
// ↑こういう風に "brue"、"red" などといった色名にも対応してます。
※ほんとうは TypeConverter のたぐいは
TypeDescriptor.GetConverter(Type)
で取得すべきなのですが WebColorConverter はどうやって取った
らいいのかわかりません(typeof(Color) だと ColorConverter が
返ってきてしまう)。
※WebColorConverter は System.Web.UI.WebControls ですが
もちろん Windows.Forms でも使えます。その場合は System.Web.dll
を参照設定すれば OK です。
没有评论:
发表评论