Согласно ссылке, опубликованной Мэттом, атрибут DefaultValue не устанавливает значение свойства по умолчанию, он просто позволяет разработчику формы знать, что свойство имеет значение по умолчанию. Если вы изменяете свойство по умолчанию, оно отображается жирным шрифтом в окне свойств.
Вы не можете установить значение по умолчанию, используя автоматические свойства - вам придется сделать это старомодным способом:
class MyClass
{
Color lineColor = SystemColors.InactiveBorder;
[DefaultValue(true)]
public Color LineColor {
get {
return lineColor;
}
set {
lineColor = value;
}
}
}