Tengo una página con una lista que muestra algo así como las publicaciones. En cada publicación debe haber un "cuadro de tarifas" que funciona de manera similar al botón "Me gusta" en Facebook. El cuadro de índice es un Control de usuario, que tiene un panel de actualización dentro.¿Cómo hacer que UpdatePanel dentro de ListView funcione?
Si pongo el control con algunos valores aleatorios en la página funciona bien, pero cuando lo coloco dentro de ListView, donde debería ubicarse, no funcionará. Se está llamando al método, pero no sucede nada.
que simplifica el código un poco para que sea más fácil de entender:
La "caja de tarifa" control:
protected void OnRateClick(object sender, ImageClickEventArgs e)
{
Rate++;
RateAmountLiteral.Text = Rate.ToString();
RateButton.Visible = false;
FeedbackLiteral.Visible = true;
rateButtonPanel.Update();
}
ascx:
<div class="rate_div">
<asp:UpdatePanel ID="rateButtonPanel" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<fieldset>
Rate:
<asp:Literal ID="RateAmountLiteral" runat="server"></asp:Literal>
<asp:ImageButton ID="RateButton" runat="server" ImageUrl="icn_rate.png"
OnClick="OnRateClick" />
<asp:Literal ID="FeedbackLiteral" runat="server" Visible="false">Thanks for rating!</asp:Literal>
</fieldset>
</ContentTemplate>
</asp:UpdatePanel>
</div>
aspx (con el control) :
<asp:ListView ID="PostsView" runat="server" ItemPlaceholderID="itemPlaceHolder2"
<LayoutTemplate>
<div class="posts_div">
<asp:PlaceHolder ID="itemPlaceHolder2" runat="server" />
</div>
</LayoutTemplate>
<ItemTemplate>
<div class="post_div">
<div class="post_body">
<%# CurrentPost.Body %>
</div>
<UC:RatingBox id="RatingBox" runat="server"
PostID="<%# CurrentPost.ID %>"
Rate="<%# CurrentPost.Rate %>"/>
By: <a href="<%# CurrentPost.Author.LinkToProfile %>">
<%# CurrentPost.Author.DisplayName %>
</a> |
<%# CurrentPost.LiteralTime %>
</div>
</ItemTemplate>
</asp:ListView>
Mientras realizaba la depuración, noté que los controles en el método "OnRateClick" están vacíos y no contienen los valores correctos. Por favor aconséjame.
Además, si tiene algún comentario sobre la forma en que hice las cosas, no se sostenga.
Gracias