also so wie du es vorgeschlagen hast, scheint es jetzt zu klappen ... :-) danke!!!
nur jetzt bleibt nach wie vor das andere problem. wenn jetzt das neue control durch eins der buttons geladen wird durch:
'Funktion, die das Control SucheKFZDetail aufruft
Sub getKFZDetail_Click(sender As Object, e As ImageClickEventArgs)
Session("kfz_id") = sender.CommandName().toString()
RaiseEvent NewControl(Me, new CommandEventArgs("SucheKFZDetail",nothing))
End Sub
dann läd er das neue auch fein brav rein. sobald ich aber auf "seite aktualisieren" gehe, bekomme ich folgenden fehler (und danach geht gar nichts mehr. ich kann zwar mit dem back-button zurück, aber jeder versuch ein control zu laden, schlägt dann mit dieser fehlermeldung fehl):
Server Error in '/' Application. --------------------------------------------------------------------------------
Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Web.HttpException: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[HttpException (0x80004005): Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.]
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +189
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +414
System.Web.UI.Control.AddedControl(Control control, Int32 index) +291
System.Web.UI.ControlCollection.Add(Control child) +153
Autofriesen.Startpage.changeControl(String newControlString) +1360
Autofriesen.Startpage.page_load(Object sender, EventArgs e) +408
System.EventHandler.Invoke(Object sender, EventArgs e) +0
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +35
System.Web.UI.Page.ProcessRequestMain() +750
----- Original Message ----- From: <[EMAIL PROTECTED]>
To: <asp.net@glengamoi.com>
Sent: Monday, January 03, 2005 10:59 AM
Subject: Re: [Asp.net] Ein frohes neues und leider wieder neue Probleme
Hallo
Vorausgesetzt ich versteh es wirklich richtig:
- Mach eine Methode XY die Dir die Table mit den Buttons baut, als Parameter für den Aufbau wird die Selektion der DDL's mitgegeben.
- Ein Page_Load (Not IsPostBack) macht nix, also ruft die Methode XY nicht auf.
- Ein Click des Suchen Buttons ruft diese Methode XY auf und speichert die Auswahl(en) anschliessend auch z.B. in den ViewState. --> Die Table mit den Buttons wird erstellt.
- Ein Click auf irgend einen der Buttons in der Table erzeugt wiederum ein PostBack.
- Beim Page_Load (IsPostBack) holst Du die vorhergehenden Auswahl(en) der
DDL's aus dem ViewSTate und ruftst damit wieder die Methode XY auf. Die Buttons
werden wieder erstellt und Du kannst die Events der Buttons auswerten.
Kann das so bei Dir klappen? Patrik
-- Original-Nachricht -- From: "Thomas Beckert" <[EMAIL PROTECTED]> To: <asp.net@glengamoi.com> Subject: Re: [Asp.net] Ein frohes neues und leider wieder neue Probleme Reply-To: asp.net@glengamoi.com Date: Mon, 3 Jan 2005 09:52:01 +0100
das problem ist, dass ich die funktion in meiner page_load nicht ausführen
kann, da:
ich habe eine suchmaske mit dropdown listen.
abhängig von diesen baue ich mir, nachdem der "suche starten" button gedrückt wurde, die tabelle mit den buttons zusammen. die kann ich mir aber
erst bauen, wenn ich weiß, was in den ddls selektiert wurde. aber an die
werte komme ich im page_init bzw. page_load ja gar nicht ran ... :-/
----- Original Message ----- From: <[EMAIL PROTECTED]>
To: <asp.net@glengamoi.com>
Sent: Monday, January 03, 2005 9:43 AM
Subject: RE: [Asp.net] Ein frohes neues und leider wieder neue Probleme
Hallo
Aufgaben Deiner Art habe ich schon ein Paar mal gemacht, allerdings irgendwie anders. Mir sagt weder der addHandler noch von wegen im "init" etwas. Ich schreib wie ich es mache:
1. Ich mache/habe eine Methode, das ist diejenige die ausgeführt werden soll auf den Button-Click. (Beispiel = LanguageChange)
2. Ich erstelle die Tabelle mit den Buttons. Wenn ich einen Button mache, dann weise ich über delegate dem click ereignis die Methode zu.
BEISPIEL --> lButton.ID = row["Description"].ToString();
lButton.Click += new System.EventHandler(this.LanguageChange);
lButton.Text = row["Description"].ToString(); lButton.CommandArgument = row["LanguageCode"].ToString(); tableContainer.Controls.Add(lButton); <---
Damit ich aber den Click auswerten kann ist es unbedingt notwendig, die
dasTable im Page_Load nach dem PostBack exakt gleich aufzubauen mit dem entsprechenden Button (also wieder den Code oben ausführe). Erst wenn der Button wieder vorhanden ist, kann auch der Event daruaf ausgewertet werden!
Tja so irgendwie mach ich das und es geht. HTH Patrik
vom-- Original-Nachricht -- From: "Thomas Beckert" <[EMAIL PROTECTED]> To: <asp.net@glengamoi.com> Subject: [Asp.net] Ein frohes neues und leider wieder neue Probleme Reply-To: asp.net@glengamoi.com Date: Mon, 3 Jan 2005 09:15:13 +0100
Hallo liste-
erst einmal an alle ein frohes neues jahr. ich hoffe, eure knochen sindich
skiurlaub unversehrt zurück gekehrt. ich habe mich über neujahr mit einem
problem rumgeschlagen, welches ich jetzt nochmal anbringen möchte, da ich es immer noch nicht gelöst habe und ich irgendwie nicht einsehen kann, warum
sowas nicht zu lösen ist. :-) also es geht um folgendes:
ich erzeuge mir ja eine tabelle mit dynamisch erzeugen imagebutton controls. diesen will ich eine funktion zuweisen, die sie aufrufen sollen. das mache ich durch den addHandler.
nun das problem:
damit das funktioniert, muss die addHandler funktion im init des controls aufgerufen werden. nur im init weiß ich ja noch nicht, wieviele controls ich erzeuge, geschweige denn, wie ich die ansprechen soll.. also der ablauf:
1. aufruf control:
-> init -> pageload -> alles fein
2. click auf einen button, der funktion "baueImageButtons" aufruft:
-> init (hier müßte ich nun die addhandler aufrufen) -> pageload -> baueImageButtons-Funktion (hier gehen die addhandler verloren). ...
ich habe jetzt wirklich schon diverse sachen ausprobiert, aber keine führt
zum erfolg...
ich bräuchte quasi ein "oberControl", welches einen handler für sich und
alle seine "unterControls" bekommt. ich denke, dann müßte es funzen. denn dann kann ich dem "oberControl" in der init immer einen handler zuordnen, und in meiner event-funktion brauche
dann dem oberControl nur unterControls hinzuzufügen, die dann auch auf
onClick-event des oberControls reagieren ... weiß nur nicht wie ich das
realisieren kann.
_______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net