Dans un module j'ai un sous qui créer modalpopup et montrer le résultat de l'action .. Je ne veux pas laisser tomber & drag modalpopup extendeur et faire complexe html donc je le fais dans le code-behind.Je me demande que Puis-je mettre en cache mon panneau et puis l'obtenir à partir du cache? Il faut du temps pour créer ces panneaux.Ou, avez-vous des recommandations pour améliorer les performances de ce sous? J'utilise Script Combining, JSminify et Css minify.My sous le code est ici.Control Cache Dans asp.net
Public Sub Raise_Alarm(ByVal p_Page As Page, ByRef p_AssignedButton As System.Web.UI.WebControls.Button, ByVal p_Message As String, Optional ByVal p_Type As MessageType = MessageType.Success)
Dim placeHolder As PlaceHolder = p_Page.FindControl("plcMsg")
Dim lblStatus As System.Web.UI.WebControls.Label
lblStatus = p_Page.FindControl("lblStatus")
lblStatus.Width = Unit.Percentage(100)
lblStatus.Font.Name = "verdana"
lblStatus.Font.Size = System.Web.UI.WebControls.FontUnit.XSmall
'Create Modalpopup extender
Dim mdlMessage As New AjaxControlToolkit.ModalPopupExtender
'Create Divs
Dim pnlMessage As New System.Web.UI.WebControls.Panel
Dim pnlFrame As New System.Web.UI.WebControls.Panel
Dim pnlContainer As New System.Web.UI.WebControls.Panel
Dim pnlHeader As New System.Web.UI.WebControls.Panel
Dim pnlMsg As New System.Web.UI.WebControls.Panel
Dim pnlBody As New System.Web.UI.WebControls.Panel
Dim pnlFooter As New System.Web.UI.WebControls.Panel
Dim pnlRight As New System.Web.UI.WebControls.Panel
'*******
'Create Ok Buttons
Dim btnOk As New System.Web.UI.WebControls.Button
'Create Message Label
Dim lblMessage As New System.Web.UI.WebControls.Label
Dim myheader As New System.Web.UI.WebControls.Label
'Assign Properties
pnlMessage.ID = "pnlMessage"
pnlMessage.CssClass = "modal-dialog"
pnlMessage.Style.Add("display", "none")
pnlFrame.ID = "pnlframe"
pnlFrame.CssClass = "frame"
pnlContainer.ID = "container"
pnlContainer.CssClass = "container"
pnlHeader.ID = "header"
pnlHeader.CssClass = "header"
myheader.ID = "headerlabel"
myheader.Text = "Warning"
pnlMsg.ID = "msg"
pnlMsg.CssClass = "msg"
pnlBody.ID = "body"
pnlBody.CssClass = "body"
pnlFooter.ID = "footer"
pnlFooter.CssClass = "footer"
pnlRight.ID = "right"
pnlRight.CssClass = "right"
btnOk.ID = "btnOk"
btnOk.Width = Unit.Pixel(50)
btnOk.Text = "Ok"
btnOk.CssClass = "but"
btnOk.OnClientClick = "Dispose()"
lblMessage.ID = "lblMessage"
lblMessage.Text = p_Message
lblMessage.CssClass = "body"
If p_Type = MessageType.Success Then
lblStatus.ForeColor = System.Drawing.Color.Blue
lblStatus.Text = p_Message
lblStatus.Visible = True
ElseIf p_Type = MessageType.Error Then
lblStatus.ForeColor = System.Drawing.Color.Red
End If
pnlRight.Controls.Add(btnOk)
pnlFooter.Controls.Add(pnlRight)
pnlBody.Controls.Add(lblMessage)
pnlBody.Controls.Add(pnlFooter)
pnlMsg.Controls.Add(myheader)
pnlHeader.Controls.Add(pnlMsg)
pnlContainer.Controls.Add(pnlHeader)
pnlContainer.Controls.Add(pnlBody)
pnlFrame.Controls.Add(pnlContainer)
pnlMessage.Controls.Add(pnlFrame)
With mdlMessage
.TargetControlID = p_AssigedButton.ID
.PopupControlID = pnlMessage.ID
.ID = "mdlMessage"
.BackgroundCssClass = "modalBackground"
.OkControlID = btnOk.ID
.Page = p_Page
End With
placeHolder.Controls.Add(pnlMessage)
placeHolder.Controls.Add(mdlMessage)
mdlMessage.Show()
End Sub
Avez-vous essayé HttpContext.Current.Cache ? –
Non, je n'ai pas essayé.Puis-je l'utiliser pour les contrôles? – Alexander
Jetez un oeil à des questions connexes à droite, par exemple: http://stackoverflow.com/questions/44757/how-to-cache-asp-net-user-controls –