Sie können keine Methode im Code hinter einer Page
-Klasse aufrufen, um Steuerelemente auf einer angezeigten Seite zu aktualisieren. Die Instanz der Klasse Page
existiert nur, während die Seite gerendert wird. Sobald die Seite im Browser angezeigt wird, ist das Objekt Page
nicht mehr vorhanden. Die PreviousPage-Eigenschaft wird verwendet, wenn Sie einen Post von einer Seite zu einer anderen erstellen. Das Objekt Page
, das zum Rendern der Seite verwendet wurde, enthält jedoch ein neu erstelltes Page
-Objekt, das nicht zum Rendern verwendet wird überhaupt etwas. Sie können es nur verwenden, um Informationen aus den Feldern basierend auf den Informationen zu lesen, die von ihm gepostet wurden.
Wenn Sie die Eröffnungsseite aktualisieren möchten, müssen Sie dies entweder auf der Clientseite mit Javascript() tun, oder die Seite neu laden, damit der serverseitige Code sie erneut füllen kann. Eine Kombination beider wäre, AJAX zu verwenden, um die Seite zu aktualisieren.
Edit:
Sie können zum Beispiel Javascript verwenden den Opener für den Zugriff auf und den Inhalt eines Elements ändern:
window.opener.document.getElementById('Info').innerHTML = 'updated';
Sie können auch eine Javascript-Funktion in der Opener Seite aufrufen:
window.opener.doSomething('data');
Das gibt Ihnen mehr Möglichkeiten, zum Beispiel einen AJAX-Aufruf zum Laden von Daten vom Server.
Guffa, könnte ich sagen, dass PreviousPage-Eigenschaft nur verwendet wird, um Daten über die Opener-Seite zu sammeln, aber nicht um sie zu aktualisieren? Sie sagten, verwenden Sie Javascript, dies zu tun, könnten Sie das mehr erklären? – Ahmed
Ja, PreviousPage erstellt ein neues Seitenobjekt mit Daten wie "ViewState" und "Form", hat jedoch keine Beziehung zu der im Browser angezeigten Seite. Ich habe dem Beitrag einige Javascript-Beispiele hinzugefügt. – Guffa