Laden des user controls dynamisch
Laden Sie ein Benutzersteuerelement dynamisch in eine Seite?
Ich habe eine Seite mit radioButtons. Jedes klicken auf einen radio-button lädt ein Benutzersteuerelement (.ascx) auf der Seite.
Was ich Tue, laden alle Steuerelemente zur gleichen Zeit, aber Ihre Sichtbarkeit auf false. Wenn ein Benutzer auf eine der radiobutton-ich setze die Sichtbarkeit der spezifischen Benutzer-Steuerelements auf true.
Als Ergebnis bin ich laden alle Bedienelemente auf jedem postback.
Gibt es irgendeine andere Möglichkeit, dies zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie ein div mit runat server auf der Seite mit der id "divControls" zum Beispiel.
Asp ermöglichen das laden eines user control ".ascx" dynamisch.
Der folgende code sollte dein problem lösen.
Wenn Sie nicht halten Sie in einer Liste, und diese Liste in der Sitzung, haben Sie viel ärger.
Ghyath Weg ist der richtige Weg, aber man sollte auch hinzufügen zu einer Liste.
Auf jedem postback, die Sie brauchen, um neu zu laden Sie Ihre div mit der die Steuerelemente in der Liste.
Edit: ich habe korrigiert die Letzte Zeile.
Gibt es keine spezifischen Gründe, um zu halten die Benutzersteuerelemente in einer einzigen Seite?
Denken Sie über die page-view-Zustand wie laden Sie alle Steuerelemente und Einstellung der Sichtbarkeit.
Ich denke, es gibt zwei mögliche Lösungen:
Entweder erstellen Sie seprate Seite mit verschiedenen Benutzer-Steuerelement und wenn Benutzer klicken Sie auf die bestimmte radio-button, redirect zu der jeweiligen Seite.
Load-on-demand, d.h. wenn der Benutzer die Anforderung eines Benutzers Steuern, nur dann laden, aber das entfernen aller anderen geladenen user-controls und damit die Seite wird nur ein Benutzer jederzeit die Kontrolle.