Es ist .net 2.0 hier, nicht MVC, und ich bin Mist bei ASP-Formulare.Übergeben Sie Daten an Benutzerkomponenten in asp.net
Ich habe eine Seite mit Benutzersteuerelementen darauf. Wenn ich auf etwas auf der Seite klicke, möchte ich das Benutzersteuerelement basierend auf einem Parameter von der Seite laden.
Ich kann es nicht tun.
In meiner Seite FaultTree_Clicked, bekomme ich den Wert, dann gilt:
Ich habe versucht, eine Eigenschaft auf dem Kind Benutzerkontrolle aussetzt den Wert einzustellen, die ich in FaultTree_Clicked gesetzt, es vergessen wird.
Ich habe versucht, es zu Session [ "MyKey"] und Laden Session [ "MyKey"] in der Page_Init Kontrolle Speichern ... ist der Wert leer.
ich versuchte, es zu Viewstate [ "MyKey"] und Laden Viewstate [ "MyKey"] in der Page_Init Kontrolle Speichern ... ist der Wert leer.
EDIT: spezifischere Informationen:
Hier ist eine abgespeckte Version von dem, was die Seite (MyFault) wie folgt aussieht:
<form id="form" runat="server">
<div id="faulttree">
<asp:TreeView ID="FaultTree" ......>
</div>
<uc1:_DefectDetail ID="DefectDetail" runat="server" Visible="true" EnableViewState="true" />
</form>
Und es gibt eine Methode auf dem Codepages hinter "FaultTree_SelectedNodeChanged()".
Wenn diese Methode getroffen wird, möchte ich das DefectDetail-Steuerelement laden/anzeigen. Das DefectControl benötigt eine Fehler-ID, die von der Struktur kommt, die ich in der SelectedNodeChanged-Methode erfolgreich erhalten habe. Ich kann den Fehler nicht in die Fehlerkontrolle bringen.
Ich aktualisierte mit einem Beispiel zu erklären, was ich versuche zu tun. – dalyons
argh! das war alles was ich tun musste !! Haha. Tausend Dank. Wenn ich die Fehlereigenschaft innerhalb der Refresh-Funktion festlege, merkte ich, dass sie leer ist, wenn ich eine andere Methode für dieses Steuerelement anrufe. Also lege ich die Faulid in ein verstecktes Feld, das von Refresh aktualisiert wird. ist das der Weg zu gehen? Ich denke, es könnte sein, weil mein Fehler Objekt nicht serialisierbar ist. – dalyons
Wenn das versteckte Feld funktioniert, ist das großartig. –