Textbox: Alter Wert nach PostBack

aquasonic

Erfahrenes Mitglied
Guten morgen zusammen...

Ich habe ein Formular (ASP.NET Steuerelemente) in welches ich beim Page_Load Event die Textboxen füllen (jedoch nur beim 1. mal, dann schreibe ich eine Session und mache es nicht mehr). Das geht auch alles gut und recht, wenn ich nun aber die Werte in den Textboxen verändere und nach dem zurückposten abfrage, ist der alte Wert drin.

Ich habe z.B. folgendes:

PHP:
// Page Load
if (Session["action"] == null) {
   Session["action"] = "edit";
   weiterleitung.Text = "alter Wert";
}

Wenn ich nun das im Feld "Ein neuer Wert" eingebe und dann folgendes ausführe mache:

PHP:
if (Page.IsPostBack) {
   lblText.Text = weiterleitung.Text;
}

So steht im lblText immer noch "alter Wert". Dies ist natürlich nur ein Beispiel, ich habe noch ei bisschen mehr Code...

Ich möchte eigentlich nur schauen ob sich am Formular irgendetwas verändert hat (editieren vom Formular) und dann nur neu eintragen wenn etwas verändert hat.

Kann ich das auch anders/einfach lösen als die Anfangswerte in eine Session zu speichern und am Schluss überprüfe ob sie verändert haben

Aber eben, kann ich ja nicht wenn die Werte den neuen Wert nicht übernehmen...

Vielen Dank schonmal für eure Hilfe.
 
Du kannst deine alten Werte auch in einem ViewState speichern, dann werden dafür hidden Fields angelegt.
Da das ja nicht dein wirklicher Code sein soll, ist es schwierig, da Fehler auszumachen.
Bist du dir sicher, dass er bei denem ersten Code-Block wirklich nicht die Bedingung durchläuft? (->Debug mit Haltepunkten?) Wenn doch wäre es ja klar, warum der alte Wert drin steht...
Warum fragst du beim ersten Betreten der Seite eigentlich eine Session-Variable und nicht "!Page.IsPostBack" ab? So, wie du das machst, schreibt er die default-Werte nicht bei einem zweiten Aufruf der Seite (von einer anderen). Willst du das?
 
Ja ich habe das gemacht mit den Anhaltspunkten, er macht es nur einmal...In der Bedingung wird auch noch auf den QueryString abgefragt (beim neu erstellen und editieren wird die gleiche Seite aufgerüfen). Mit Page_Unload() lösche isch danach die Session wieder...

Meiner Meinung ist alles richtig...
 
Zurück