2010-02-18 4 views
1

Comment procéder par programmation?Colonne dynamique contenant un répéteur

Je peux le faire très bien déclarative, en utilisant une colonne de modèle, puis d'utiliser quelque chose comme ceci:

... 
<TemplateGridColumn> 
    <ItemTemplate> 
     <div> 
      <asp:Image ID="groupImg" CssClass="groupImg" runat="server"/> 
      <asp:Repeater ID="groupItemRpt" runat="server"> 
      <HeaderTemplate> 
       <ul class="groupItemList"> 
      </HeaderTemplate> 
      <ItemTemplate> 
       <li> 
        <asp:Image ID="itemImg" runat="server" /> 
        <asp:HiddenField ID="itemValue" runat="server" /> 
       </li> 
      </ItemTemplate> 
      <FooterTemplate> 
       </ul> 
      </FooterTemplate> 
      </asp:Repeater> 
     </div> 
    </ItemTemplate> 
    </TemplateGridColumn> 
... 

Je crée dynamiquement cette grille sur la base des données, donc je colonnes déjà ajouté avec un ensemble de contrôles. Mais maintenant, je dois comprendre comment afficher plusieurs images, qui se développent/se contractent si le contrôle d'image groupImg est cliqué (je viens de basculer le ul) ..

Quelqu'un peut-il me diriger dans la bonne direction? Merci.

Répondre

0

Cela peut ne pas être la solution la plus propre, mais jetez un oeil à la méthode FindControl(). Vous pouvez l'utiliser pour boucler les éléments de la grille et trouver le répéteur par son ID.

+0

Dans quel contexte? J'ai besoin de faire une nouvelle classe ITemplate qui peut faire la même chose que le déclaratif que j'ai posté .. – djbyter

+0

Peut-être que j'ai mal compris votre question. J'avais l'impression que vous vouliez lier dynamiquement les données au répéteur dans les lignes liées de la grille. – Jaguir

Questions connexes