Я не уверен в квадрате изменения размера, но MaximunSize и MinimumSize - правильные значения для вас.
Но недостаточно установить их в конструкторе вашего класса, потому что каждый раз, когда вы переносите экземпляр вашего элемента управления из конструктора в форму, эти значения устанавливаются после конструктора.
Вы должны:
переопределяет MinumumSize и MaximumSize, и net устанавливает базовое значение из вашего значения, но не из вашего значения.
private Size maxSize = new Size(100, 5);
public override Size MaximumSize
{
get { return base.MaximumSize; }
set { base.MaximumSize = maxSize; }
}
создайте публичный метод в вашем классе:
public bool ShouldSerializeMaximumSize()
{
return false;
}
и
private void ResetMaximumSize()
{
me.MaximumSize = maxSize;
}
Эти методы являются соглашением от Windows Forms Desinger: http://msdn.microsoft.com/en-us/library/53b8022e.aspx