Майкл предоставил отличный ответ, и он решит вашу проблему во время выполнения. Однако во время разработки, если вам нужно иметь возможность изменять это значение более одного раза (это время проектирования и вероятность, вероятно, высока), тогда вы захотите объединить проверку DesignMode с примером Майклса:
private int _myProperty;
private bool _isMyPropertySet = false;
public int MyProperty
{
set
{
if (this.DesignMode || !_isMyPropertySet)
{
_isMyPropertySet = true;
_myProperty = value;
}
else
{
throw new NotSupportedException();
}
}
}
Теперь вы сможете редактировать это значение для своего сердца во время разработки, не сталкиваясь с этим NotSupportedException () и не получая испорченный дизайнер во втором наборе.