ASP.NET - panneau de mise à Jour dans la page principale, le bouton actualiser dans le Contenu de la Page
J'ai panneau de mise à Jour dans la page Maître:
<asp:ScriptManager id="CartScript" runat="server"></asp:ScriptManager>
<asp:UpdatePanel id="CartBox" runat="server" updateMode="Conditional">
<ContentTemplate>
Košík [ <asp:HyperLink NavigateUrl="~/Account/Login.aspx" ID="ShoppingCart" runat="server" text="" /> ] <asp:LinkButton ID="DeleteCart" runat="server" Text="Vymazat košík" OnClick="ThrowCart_Click" />
</ContentTemplate>
</asp:UpdatePanel>
et Bouton Acheter dans le Contenu de la page:
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<asp:Button ID="BuyButton" Runat="server" Text="Přidat do košíku" onclick="Buy_Click" />
</asp:Content>
J'ai donc besoin d'ajouter de panneau de mise à Jour AsyncPostBackTrigger pour ce bouton.
J'ai d'abord essayé de l'ajouter à partir du contenu de la page:
protected void Page_Load(object sender, EventArgs e)
{
AsyncPostBackTrigger trigger = new AsyncPostBackTrigger();
trigger.ControlID = "BuyButton";
UpdatePanel panel = (UpdatePanel)Master.FindControl("CartBox");
if (panel != null)
{
panel.Triggers.Add(trigger);
}
ScriptManager script = (ScriptManager)Master.FindControl("CartScript");
script.RegisterAsyncPostBackControl(BuyButton);
}
Mais il n'a erreur: Un contrôle avec l'ID 'BuyButton' n'a pas pu être trouvé pour la détente UpdatePanel 'CartBox'.
Alors j'ai essayé d'ajouter à partir de la page Maître:
protected void Page_Load(object sender, EventArgs e)
{
if ((Button)MainContent.FindControl("BuyButton")!=null)
{
AsyncPostBackTrigger trigger = new AsyncPostBackTrigger();
trigger.ControlID = ((Button)MainContent.FindControl("BuyButton")).ID;
CartBox.Triggers.Add(trigger);
CartScript.RegisterAsyncPostBackControl((Button)MainContent.FindControl("BuyButton"));
}
}
Mais j'ai eu le même message d'erreur. 🙁
Alors u peut me dire comment je peux ajouter à mon Panneau de mise à Jour que le Bouton à partir de la Page de Contenu pouvez l'actualiser?
OriginalL'auteur John | 2011-02-26
Vous devez vous connecter pour publier un commentaire.
Modifier
Lieu le
BuyButton
bouton à l'intérieur de son propreUpdatePanel
aussi bien sur le contenu de la page. Ajouter votreAsyncPostBackTrigger
pour que les nouveauxUpdatePanel
, et alors il sera en mesure de trouver le bouton, et d'utiliser laScriptManager
à partir de la page principale.Ah, raté ce détail. Merci 🙂
OriginalL'auteur mellamokb