Frage zur Visuellen Vererbung

Hallo,
ich verwende Visual Studio 2008.
Ich mache ein neues Windows Projekt (C# oder VB ist egal)
Standardmäßig hat man dann eine „Form1“
Ins Load event mache ich eine MsgBox
Dann füge ich eine Form2 hinzu, die von Form1 vererbt ist.
Wenn ich nun die Form2 mit dem Designer öffne, kommt jedesmal die MsgBox des FormLoad Events von Form 1.

Kann man das irgendwie abschalten? Ich will den Code in FormLoad nur zur Laufzeit ausführen, nicht beim öffnen der vererbten Form im Designer!

Thomas

Hallo Thomas!

Eine schöne Lösung ergibt sich ja schon durch die Vererbung. Überschreibe einfach die Methode, die die MessageBox erzeugt im Form2.

Code im Form1 etwa:

public virtual void Form1\_Load(object sender, EventArgs e)
{
 MessageBox.Show("Im Form1 wird eine Meldung angezeigt.");
}

Im Form2 überschreibe das mit:

public override void Form1\_Load(object sender, EventArgs e)
{
 // Nichts mehr zu sehen.
 // MessageBox.Show();
}

Grüße!
Frohsinn.

Hallo!

Warum nimmst Du nicht einfach das DesignMode Property, um festzustellen, ob Du Dich im Designer befindest?

Gruß,
Martin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Danke für euren Tip
Thomas