Если вы хотите предоставить новую форму только одному параметру, я согласен с тем, что хорошим решением проблемы является создание конструктора с одним параметром, как показывает johan.
Если вы хотите внести дополнительные изменения в форму до того, как вы ее покажете, вы можете создать свойство в форме, которое в то время как установлено, задает свойства формы или методы. Хорошо, когда вам нужно изменить поведение одной формы, которая используется в нескольких местах в коде.
Например, форма модифицированного свойства с конструктором по умолчанию:
public class MyForm : Form
{
public string HeaderText
{
get {return this.Text;}
set {this.Text = value;}
}
private MyLayoutEnum _LayoutStyle;
public MyLayoutEnum LayoutStyle
{
get
{
return this._LayoutStyle;
}
set
{
this._LayoutStyle = value;
switch (value)
{
case MyLayoutEnum.Basic:
{
//do work
break;
}
case MyLayoutEnum.Advanced:
{
//do work
break;
}
default:
{
//unsupported case - for example
break;
}
}
}
}
}
public enum MyLayoutEnum : int
{
None = 0,
Basic = 1,
Advanced = 2
}
Спасибо Вы Йохан и Лайош Арпад – user1058384
@ user1058384 все теперь исправлена? – Johan