2015-06-12 6 views
1

Вот мой дизайн страницы:Достижение повторитель пункт: Логика

<asp:MultiView ID="mvProducts" runat="server" ActiveViewIndex="0"> 
    <asp:View runat="server" ID="mvProducts1"> 
    <asp:Repeater ID="rptDiscount" runat="server"> 
     <ItemTemplate> 
     <div class="divProduct1"> 
      <div class="divProductHeader"> 
      <asp:Panel ID="pnlDiscount" runat="server" CssClass="divProductHeaderDiscount" Visible="true"> 
       <div class="menuTextTopSpacer"></div> 
       <asp:Label ID="lblDiscount" runat="server" Text='<%#Eval("discount") %>'></asp:Label> 
      </asp:Panel>` 

Я просто хочу, чтобы добраться до пункта pnlDiscount, но я не знаю, как. Я сделал поиск, но это просто помогло мне смутить.

Действительно, я хочу узнать логику поиска элемента управления в ретрансляторе.

ответ

2

Используйте ItemDataBound на вашем reapter затем использовать FindContol(), чтобы добраться до Panel

protected void rptDiscount_ItemDataBound(object sender, RepeaterItemEventArgs e) 
{ 
    Panel myPanel= e.Item.FindControl("pnlDiscount") as Panel; 

    //Do some work 
} 
+0

Спасибо. Я изо всех сил старался сделать это до привязки данных. Но это кажется проще. Еще раз спасибо ... –

+0

Добро пожаловать! Рад, что смог помочь – Izzy