Ich habe ein Benutzersteuerelement (.ascx) in meinem Projekt, das ich einer Seite programmatisch im Page_Load-Ereignishandler der Seite hinzufüge, wie folgt:
Controls.Add(new MyProject.Controls.ControlWidget());
Databind();
Wenn ich versuche, auf die untergeordneten Steuerelemente des Steuerelements vom Steuerelement selbst aus zuzugreifen, sind sie nicht vorhanden.
public override void DataBind()
{
myrepeater.DataSource = GetDataSource();
// throws an exception because myrepeater is null
base.DataBind();
}
Wie greife ich auf die untergeordneten Steuerelemente der Benutzersteuerung zu? Ich habe versucht, einen Aufruf von EnsureChildControls() zu meiner DataBind()-Überschreibung hinzuzufügen, aber das scheint keinen Unterschied zu machen.