Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/74: Рейтинг темы: голосов - 74, средняя оценка - 4.51
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
1

Приведение типа String к Color

02.01.2012, 21:51. Показов 13581. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
подскажите, пожалуйста, как можно перевести из string в color на c#
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.01.2012, 21:51
Ответы с готовыми решениями:

Как создать массив со строками - string, string, Color Clr = Color.Black?
Как создать массив со строками - string, string, Color Clr = Color.Black? Имеется массив....

Приведение типа от object к string
Доброго времени суток. Суть: Необходимо привести объект типа object к любому другому типу,...

"Приведение типа "|DBNull" к типу "String" при попытке загрузить данные из ячейки DataGridView в ComboBox
Доброго времени суток! Сама ошибка "Приведение типа "|DBNull" к типу "String" является...

Поиск в DGW вылетает с ошибкой "Приведение типа "|DBNull" к типу "String" является недопустимым."
В общем такой вопрос. Код рабочий. Только у меня не работает. For i = 0 To...

8
5 / 7 / 1
Регистрация: 29.11.2011
Сообщений: 47
02.01.2012, 21:58 2
а функцией Convert не получится?
0
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
02.01.2012, 22:01  [ТС] 3
значение строки - Color [A=255, R=230, G=230, B=231]
она была получена раньше путем преобразования из color методом ToString().
передать старое значение color в новое не возможно, нужно через строку.
0
42 / 36 / 2
Регистрация: 18.12.2011
Сообщений: 113
02.01.2012, 22:04 4
Если строка - корректное название цвета, то Color.FromName.
Если строка - запись цвета в виде AARRGGBB, то по отдельности парсите каждое число, после чего используете функцию Color.FromArgb(int alpha, int red, int green, int blue);
C#
1
2
3
4
5
6
7
string clrAsStr = "AFFFFFFF";
int a = int.Parse(clrAsStr.Substring(0,2),16);
int r = int.Parse(clrAsStr.Substring(2,2),16);
int g = int.Parse(clrAsStr.Substring(4,2),16);
int b = int.Parse(clrAsStr.Substring(6,2),16);
Color clr = Color.FromArgb(a,r,g,b);
Color clr2 = Color.FromName("DarkRed");
0
7 / 7 / 0
Регистрация: 05.11.2011
Сообщений: 153
02.01.2012, 22:04  [ТС] 5
пробовал Convert, но не получилось. Может сможете привести пример?
0
4 / 4 / 1
Регистрация: 05.09.2011
Сообщений: 19
02.01.2012, 22:07 6
в данном случае парсить регекспами и Color.FromArgb....
0
Эксперт .NET
17790 / 12941 / 3381
Регистрация: 17.09.2011
Сообщений: 21,215
02.01.2012, 22:15 7
Цитата Сообщение от andrey11231990 Посмотреть сообщение
значение строки - Color [A=255, R=230, G=230, B=231]
Если хотите сериализовать цвет в строку, а потом десериализовать обратно, то приведите его к виду AARRGGBB и сохраняйте уже эту строку, ее потом можно десериализировать через ColorTranslator.FromHtml.
Как вариант, можно привести цвет к целому числу, хранящему информацию ARGB через метод ToArgb, потом это целое в строку и сохранить. Десериализация проходит в обратном порядке: сначала парс строки в целое, потом через Color.FromArgb.

Цитата Сообщение от Петррр Посмотреть сообщение
C#
1
Color color = Color.FromName(stringColor);
К сожалению, этот метод работает только с цветами, являющимися членами перечисления KnownColor.
1
Петррр
02.01.2012, 22:16
  #8

Не по теме:

Я уже заметил.

0
935 / 760 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
03.01.2012, 08:48 9
C#
1
2
3
4
string str = "Color [A=255, R=230, G=200, B=231]";
MatchCollection p = Regex.Matches(str, @"(?<=[ARGB]\=)(\d+)");
Color color = Color.FromArgb(int.Parse(p[0].Value),
                  int.Parse(p[1].Value), int.Parse(p[2].Value), int.Parse(p[3].Value));
3
03.01.2012, 08:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.01.2012, 08:48
Помогаю со студенческими работами здесь

Ошибка: Приведение типа DBNull к типу String является недопустимым
В чём может быть проблема с базой (таблицей), если в созданном для базы приложении хочу осуществить...

Присвоение объекту типа string рандомный элемент из массива типа string
Добрый вечер, дорогие форумчане. Я столкнулся с проблемой. Как присвоить объекту типа string...

"Приведение типа "|DataRowView" к типу "String" является недопустимым"
Пытаюсь вытащить из базы данных и связать фамилии студентов, их суммы и даты оплаты обучения. Все...

Обработка "null" в MS Access "Приведение типа "|DBNull" к типу "String" является недопустимым"
Здравствуйте. Работаю с базой MS Access Вывожу в DataGridView таблицу Проблема следующая, если у...

Из String в Color...
Доброго времени суток! Имеется переменная типа string TheColor = &quot;ff4f00&quot;; Требуется форме задать...

Выполнить преобразование Color в String
Подскажите, пожалуйста, как можно выполнить преобразование color в string на c#? Добавлено через...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru