Einfach das mit in deinen Form descendant einbauen:
Code:
class AddingUnit :Form
{
private static AddingUnit fInstance;
public static AddingUnit CreateInstance()
{
if (fInstance == null)
fInstance = new AddingUnit();
return fInstance;
}
...
}
Kiek dir mal genau an was das macht.
Damit ist das:
Code:
aForm = AddingUnit.CreateInstance();
... exakt das gleiche wie:
Code:
aForm = AddingUnit.CreateInstance();
aForm = AddingUnit.CreateInstance();
aForm = AddingUnit.CreateInstance();
aForm = AddingUnit.CreateInstance();
aForm = AddingUnit.CreateInstance();
aForm = AddingUnit.CreateInstance();
aForm = AddingUnit.CreateInstance();
Wenn du dieses abgeschwächte Singleton in deine Form-ableitung packst, kannst du immer nur eine Instanz bekommen, egal wie oft du sie aufrufst.
also statt:
Code:
aForm = new AddingUnit();
janz einfach:
Code:
aForm = AddingUnit.CreateInstance();
Edit: Kann man sich eigentlich wirklich sooft vertippen?