Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Цвета


Автор: vlsaf 27.2.2008, 18:51
Есть у меня цвет в виде 

Код

System.Drawing.Color color;


Подскажите, как его проще преобразовать в строку вида #aabbcc

Может имеются какие-то готовые классы?


Автор: Mymik 27.2.2008, 20:42
Код

String.Format("#{0:X2}{1:X2}{2:X2}", System.Drawing.Color.Red.R, System.Drawing.Color.Red.G, System.Drawing.Color.Red.B);

Автор: vlsaf 28.2.2008, 10:55
Можно совсем просто

Код

System.Drawing.Color color;
string strColor = "#" + color.Name;

Автор: Mymik 28.2.2008, 12:05
вообще я б тебе не советовал так писать. У разных браузеров наименование цвета отличается друг от друга. Потому и используют hex вид цвета для того чтобы везде одинаково отображались.

Автор: vlsaf 29.2.2008, 11:57
А это и есть нормальное представление.

для красного цвета Color.Red такая конструкция выдает "ff0000"

т.е

Код

System.Drawing.Color color;
color =System.Drawing.Color.Red;
string strColor = color.Name;

видим, что strColor равняется "ff0000"

Поправте меня, если я не прав.

Автор: Mymik 29.2.2008, 12:15
Цитата(vlsaf @  29.2.2008,  11:57 Найти цитируемый пост)
Поправте меня, если я не прав. 

после выполнения твоего кода у меня в strColor хранится "Red" но никак ни "FF0000"... 

Автор: vlsaf 29.2.2008, 12:27
Странно, у меня именно "ff0000" 
И работает.

(VS2005 pro)

это ни что иное, как загадки от Microsoft  smile 

Закроем этот вопрос. Тут что-то нечисто  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)