Как создать свойство типа System. Windows .Media.Color с пользовательским значением - PullRequest
0 голосов
/ 24 января 2020

Я создаю ViewModel и не могу найти способ создать что-то вроде следующего псевдокода:

 private Color _GradientColor = new Color().DodgerBlue;  //Something like this

Я могу сделать:

private SolidColorBrush _GradientColor = new SolidColorBrush(Colors.DodgerBlue);

Но это это не то, что мне нужно.

1 Ответ

0 голосов
/ 24 января 2020

Эти два не являются удаленно эквивалентными.

private Color _GradientColor;
_GradientColor = new Color().DodgerBlue;  //Something like this

Вы создаете экземпляр Color, чтобы затем получить доступ к свойству, которое содержит экземпляр для DodgerBlue?

private SolidColorBrush _GradientColor = new SolidColorBrush(Colors.DodgerBlue);

Здесь вы создайте экземпляр SolidColorBru sh, задав ему значение Constant, Stati c или Enumeration в качестве входных данных. Поскольку это Colors (множественное число), это, скорее всего, перечисление - вещь, которую вы не можете создать. Если это перечисление, это может быть код, который вы ищете:

private Color _GradientColor;
_GradientColor = Colors.DodgerBlue;

Однако в целом это может быть неправильная дорожка. Как правило, ViewModel не имеет дело с цветами. Это однозначно, вид сбоку. Возможно, вы ищете конвертер? Или, может быть, у вас есть специальная модель ViewModel только для таких вещей, как цвета?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...