class A
{
    public Color ColorA { get; set; }
    public Color ColorB { get; set; }

    public A(Color colorA, Color colorB)
    {
        ColorA = colorA;
        ColorB = colorB;
    }

    public override string ToString()
    {
        return ColorA + " " + ColorB;
    }
}


呈现为:





和这个:

class A
{
    public Color ColorA { get; set; }
    public Color ColorB { get; set; }

    public A(Color colorA, Color colorB)
    {
        ColorA = colorA;
        ColorB = colorB;
    }

    public override string ToString()
    {
        return "Red" + " " + "Black";
    }
}


呈现为:



为什么会有所不同?

编辑:我知道为什么不同。我的问题是,如何在不对颜色文本进行硬编码的情况下获得第二个结果。

最佳答案

尝试这个:

return ColorA.Name + " " + ColorB.Name;

10-06 13:26