ich die Bedeutung von base.OnLoad(e);
Mein Verständnis falsch verstanden haben könnte, war, dass diese Erklärung der OnLoad-Methode der Basisklasse der Klasse nennen, woher es genannt wird. Wenn ich jedoch den Debugger verwende, um den Code zu durchlaufen, sehe ich andere Ergebnisse.base.OnLoad (e) in einer ASP.NET-Seite
public abstract class BaseUC : System.Web.UI.UserControl
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
SomeAbstractMethod();
}
}
Im ascx.cs konkreten Klasse
public partial class MyUserControl : BaseUC
{
protected void Page_Load(object sender, EventArgs e)
{
//On Load logic
}
}
Ich habe einen Haltepunkt auf base.OnLoad(e)
. Wenn ich F11 drücken (Schritt in), nimmt der Debugger mich Page_Load
von MyUserControl, so dass der Ablauf der Steuerung ist:
BaseUC.OnLoad()
MyUserControl.Page_Load()
BaseUC.SomeAbstractMethod()
Kann jemand erklären, was hier vor sich geht?
"BaseUC.Onload ruft Control.OnLoad auf, das das Load-Ereignis auslöst." Welche Linie macht das möglich? – DotnetDude
base.OnLoad (e) - der Code dort wird das Ereignis auslösen. –
Ich denke, das ist der Teil, den ich nicht verstehe. Warum ruft base.OnLoad (e) die Control.OnLoad (in diesem Fall die MyUserControl.Page_Load() )? – DotnetDude