Я знаю, что есть много способов преобразования цветов в C #, от преобразования строк до значений Color, преобразования HTML и даже каркаса XNA; Тем не менее, у меня есть объект, который возвращает тип System.Drawing.Color; но так как это «объект», а не «цвет», я не могу использовать обычные цветовые команды для него.
public void SetPropertyValue(string propertyName, object value)
{
_PropertyValues[propertyName] = value;
Console.WriteLine("Setting Property: {0}={1}", propertyName, value);
}
Выше описывается, что происходит, когда пользователь изменяет значение свойства Grid в C #. Результаты ниже:
Известные имена
Настройка свойства: цвет = цвет
[DimGray]
Пользовательский цвет
Свойство настройки: Цвет = Цвет [A = 255, R = 255, G = 255, B = 128]
Цвет системы
Свойство настройки: Color = Color [ControlText]
Я хотел бы взять значения, которые у него есть, и фактически преобразовать их в цвет, чтобы я мог иметь его в переменной defaultColor, которая была ранее создана в программе.
Однако, поскольку это объект , а не фактический 'System.Drawing.Color', я не могу использовать такие вещи, как:
.ToKnownColor ()
.ToArgb ()
.ToName ()
и так далее.
Я знаю, что должен быть способ преобразования объекта в реальный цвет. Я делаю value.GetType (), и он возвращает System.Drawing.Color , поэтому система знает, что это цвет, но я не могу манипулировать им при жизни.
Я пока не эксперт в C #, извините, если это звучит так просто, но мне все равно нужна помощь.