Laden...

Steuerelementzustand über GET-Anforderung beibehalten

Erstellt von serial vor 13 Jahren Letzter Beitrag vor 13 Jahren 521 Views
S
serial Themenstarter:in
902 Beiträge seit 2007
vor 13 Jahren
Steuerelementzustand über GET-Anforderung beibehalten

Hallo,

vielleicht habe ich nur blätter vor den augen, aber folgendes problem:

ich habe ein einfaches CompositeControl geschrieben, welches einige Eigenschaften hat.
Diese Eigenschaften benutze ich in der CreateChildControl-Methode.
Mein problem ist, dass die eigenschaften von einer Page im Page_Load gesetzt werden (Page wird per Redirect aufgerufen, also kein PostBack), allerdings im Control wohl noch nciht zuer verfügung stehen, wenn CreateChildControls aufgerufen wird.

Was mache ich denn hier falsch?

Beispiel


 public class MyControl : CompositeControl, INamingContainer
    {
       
        int _maximalDataCount;
        [Bindable(true)]
        [PersistenceMode(PersistenceMode.Attribute)]
        [DefaultValue(0)]
        [Description("Gibt an, wieviele Daten maximal vorhanden sind")]
        public int MaximalDataCount
        {
            get
            {
                return _maximalDataCount;
            }
            set
            {
                _maximalDataCount = value;
            }
        }

       protected override void CreateChildControls()
        {
            CreateControlHierarchy();
            base.CreateChildControls();
        }

       protected virtual void CreateControlHierarchy()
        {
         //hier benötige ich die eigenschaft, ist allerdings noch nciht vorhanden, da in 
         //den setter erst NACH dem aufruf der CreateChildControls gegangen wird
         }
  }

Die Eigenschaft habe ich schon auf alle möglichen arbeiten gespeichert, im ViewState und ControlState (sind aber nur für PostBacks verfügbar?)

und hier das setzen der eigenschaft in einer page, wo dieses control im markup vorhanden ist


 MyControl1.MaximalDataCount = 100;

ich muss dazu sagen, ich entwickle eigentlich sonst keine Serversteuerelemente, daher fehlt mir hier vielleicht auch eine entsprechende grundlage, aber mein studium der msdn hat mir auch nicht so viel weitergeholfen.

ich danke schonmal für eure hilfe

mfg
serial