public void log(String msg, Color c = Color.black)
{
loggerText.ForeColor = c;
loggerText.AppendText("\n" + msg);
}
这会导致错误c必须是编译时常量。我已经阅读了这一点,大多数例子都是关于字符串和整数的。我发现我可以使用colorconverter类,但我不确定它会非常有效。有没有办法将基本颜色作为可选参数传递?C#4.0:我可以使用Color作为默认值的可选参数吗?
public void log(String msg, String c = "Black")
{
ColorConverter conv = new ColorConverter();
Color color = (Color)conv.ConvertFromString(c);
loggerText.ForeColor = color;
loggerText.AppendText("\n" + msg);
}
你也可以使用'默认值(色彩)'作为默认值 - 但有时这可能使人们无法区分有效的参数值的默认值。在这种情况下,Nullable倾向于更好。 – LBushkin 2010-05-10 16:31:06
@Bushkin:我完全同意这一点! – Simon 2010-05-10 16:32:01
thx ..用颜色解决了我的问题。 +1 – kplshrm7 2015-11-26 10:17:22