Problem with an UpdatePanel inside 2 nested Repeaters

Last post 05-09-2008 3:09 PM by rudyz. 2 replies.

Sort Posts:

  • Problem with an UpdatePanel inside 2 nested Repeaters

    05-08-2008, 12:54 PM
    • Loading...
    • rudyz
    • Joined on 05-08-2008, 4:36 PM
    • Posts 2

    Any body with an idea please help. I am trying to ajaxify a control that will be inside 2 nested repeaters and it doesn't work. Please see code below.

    From User Control:

    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="AjaxTest.ascx.cs" Inherits="AjaxTest" %>

    <%@ Register Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"

    Namespace="System.Web.UI" TagPrefix="asp" %>

    <asp:LinkButton ID="lnkTrigger" runat="server" Text="Trigger" CommandName="trigger"></asp:LinkButton>

    <asp:Label ID="lblUpdate" runat="server"></asp:Label>

     

    From aspx page:

    <%@ Register src="AjaxTest.ascx" tagname="ajaxTest" tagprefix="atest" %>

    <%@ Register Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"

    Namespace="System.Web.UI" TagPrefix="asp" %>

    <table>

    <asp:Repeater id="rptGameDay" runat="server" EnableViewState="false">

    <ItemTemplate>

     

    <asp:Repeater ID="repTriggers" runat="server">

    <HeaderTemplate>

    <tr>

    </HeaderTemplate>

    <ItemTemplate>

    <td valign="top" align="left">

    <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="conditional">

    <ContentTemplate>

    <atest:AjaxTest id="ajaxTest1" runat="server" />

    </ContentTemplate>

    </asp:UpdatePanel>

    </td>

    </ItemTemplate>

    <SeparatorTemplate>

    </tr><tr>

    </SeparatorTemplate>

    <FooterTemplate>

    </tr>

    </FooterTemplate>

    </asp:Repeater>

     

    </ItemTemplate>

    </asp:Repeater>

    </table>

     

    From Page Load Method:

    List<int> intList = new List<int> {1};for(int i=0; i<1; i++)

    {

    rptGameDay.DataSource = intList;

    rptGameDay.ItemDataBound += rptGameDay_ItemDataBound;

    rptGameDay.DataBind();

    }

     

    private void rptGameDay_ItemDataBound(object sender, RepeaterItemEventArgs e)

    {

    if (e.Item.ItemType != ListItemType.Item && e.Item.ItemType != ListItemType.AlternatingItem) return;

    Repeater repTriggers = (Repeater)e.Item.FindControl("repTriggers");

    repTriggers.ItemCommand += new RepeaterCommandEventHandler(repTriggers_ItemCommand);

    repTriggers.DataSource = new int[3] { 0, 1, 2 };

    repTriggers.DataBind();

    }

     

    protected void repTriggers_ItemCommand(object sender, RepeaterCommandEventArgs e)

    {

    AjaxTest ajaxTest = (AjaxTest)e.Item.FindControl("ajaxTest1");if (e.CommandName == "trigger")

    {

    LinkButton btn = e.CommandSource as LinkButton;

    if (btn != null)

    {

    ((
    Label)ajaxTest.FindControl("lblUpdate")).Text = "Update triggered by " + btn.ID + e.Item.ItemIndex.ToString();

    }

    }

    }

     

    When I have the control inside one repeater it works. Very odds. Maybe there is something I am not doing. Can someone please help.

    Thanks!

     

  • Re: Problem with an UpdatePanel inside 2 nested Repeaters

    05-08-2008, 11:32 PM

    You have to handle Bubble Event

    http://forums.asp.net/t/1138191.aspx

     

    Chetan Sarode
    Software Engineer,
    Approva Systems Pvt Ltd,
    Pune, India.
  • Re: Problem with an UpdatePanel inside 2 nested Repeaters

    05-09-2008, 3:09 PM
    • Loading...
    • rudyz
    • Joined on 05-08-2008, 4:36 PM
    • Posts 2

    After handling with bubble event, the label control which I am trying to update is not updating. It comes back with the initial empty string value or whatever value I started with. Any idea why that is happening?

    Thanks!

Page 1 of 1 (3 items)