Ich verfüge über ein Benutzersteuerelement, das abhängig von den Benutzereinstellungen dynamisch andere Benutzersteuerelemente hinzufügt. Ich habe Probleme beim Hinzufügen der Steuerelemente mit der überladenen LoadControl-Methode.Kann ich Benutzersteuerelemente mithilfe von Konstruktoren dynamisch erstellen?
Ich habe versucht, dies zu tun:
ddControl = typeof(DropDownControl), new object[] { testData, FilterModel.Models[i] });
jedoch keine der Kontrollen in ddControl wurde initialisiert und wenn ich die Datenquelle auf die Combobox zu setzen versuchte, es enthält, es explodierte. Ich gehe in einem Modell und einer Datenquelle an den Konstruktor, die Eigenschaften setzt, Standardwerte, usw. Habe ich eine loadmodel() Methode zu schaffen, um die Modellwerte zu laden, nachdem ich die Steuerung wie
(DropDownControl)LoadControl("~/WebUserControls/DropDownControl.ascx")
oder erstellen können Ich mache das alles irgendwie durch den Konstruktor, während ich es dynamisch deklariere?
Wenn das nicht klar ist, lassen Sie mich wissen, wie ich es so machen kann. Vielen Dank!
webforms & usercontrols sind allergisch auf Konstruktor Injektion. Am besten fügen Sie eine Methode hinzu, die Sie nach 'LoadControl' aufrufen, um die Injektion durchzuführen. –