Tjenare. Du kan lägga till dina usercontrols på olika sätt. Detta är ett: Tackar, du vet inte hur det blir med prestanda? Inte säker, men jag brukar bygga så enkelt som möjligt och om det blir segt så definierar jag flaskhalsarna och bygger bort dem.Dynamiskt inlagd web user control
En av mina kunder vill ha en liten enkel CMS.
Om ni kollar på sidan [url]www.posh24.se[/url] så ser ni att det finns lite moduler i masterpagen på höger och vänster sida (ex "Mest läsa just nu").
Dessa är idag hårdkodade i masterpagen
<Dac:ViewLeaderBox ID="moduleRight1" runat="server" />
Nu vill kunden kunna styra dessa var de ska ligga etc.
En lösning vore att skapa en place holder sedan i runtime instansiera Web user controler och stoppa i place holdern.
Funkar detta? Hur blir det med postback, output cache etc?
När ska man instansiera dem? Blir det vid varje !IsPostback?
Tack på förhand....Sv: Dynamiskt inlagd web user control
<code>
Dim UC as new myUserControl
placeholder.Controls.add(UC)
</code>
Eftersom de läggs till i runtime så måste du lägga till dem varje gång sidan laddas.
Du måste då också tilldela aktuella värden till din UserControl.
Jag brukar hämta postade värden genom att skapa properties i min UC och spara värdena i ViewState
<code>
Public Property myProp() As Integer
Get
ViewState(Me.ClientID & "myProp")
End Get
Set(ByVal value As Integer)
ViewState.Add(Me.ClientID & "myProp", value)
End Set
End Property
</code>Sv:Dynamiskt inlagd web user control
Dessa moduler är de flesta cachade, men vissa gör idag enbart saker vid !Postback, med andra ord kommer dessa instansieras och köras oftare?Sv: Dynamiskt inlagd web user control