-1

我正在创建一个 ViewModel,但找不到创建类似以下伪代码的方法:

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

我可以:

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

但这不是我需要的。

4

1 回答 1

0

这两者并不等同。

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

您正在创建 Color 的实例,然后访问包含 DodgerBlue 实例的属性?

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

在这里,您创建一个 SolidColorBrush 实例,并为其提供一个常量、静态或枚举值作为输入。因为它是颜色(复数),所以它极有可能是一个枚举——你无法实例化的东西。如果它是一个枚举,这可能是您正在寻找的代码:

private Color _GradientColor;
_GradientColor = Colors.DodgerBlue;

但是,总体而言,这可能是错误的轨道。一般来说,ViewModel 不处理颜色。这是一个明确的,观点方面的事情。您可能正在寻找转换器?或者也许你有一个特殊的 ViewModel 只用于颜色之类的东西?

于 2020-01-23T23:40:54.613 回答