public void Test(Color foreColor = Color.Black) doesn’t work (error message Default parameter value for ‘parameter’ must be a compile-time constant) beacause Color.Black isn’t a constant value (Color is a struct).
Solution:
public void Test(Color? foreColor = null)