2017-07-28 2 views
0

Comme vous pouvez le voir, j'ai TextBox dans le ItemTemplate. Ce que je veux faire est: Je veux utiliser TxtUrunID dans le code de base de données dans default.aspx.cs mais je ne peux pas trouver TxtUrunID. Que puis-je faire?Je ne peux pas utiliser/appeler le TextBox à l'intérieur du modèle d'élément dans le aspx.cs

<asp:Repeater ID="Repeater2" runat="server" DataSourceID="SqlDataSource2"> 
    <ItemTemplate> 
     <li class="<%#Eval("urunkategoriadi") %>"> 
      <figure> 
       <div class="gallery-img"><asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click"><img src="<%#Eval("urunresmi") %>" alt="" /></asp:LinkButton></div> 
       <figcaption> 
        <asp:TextBox ID="TxtUrunID" runat="server" CssClass="form-control" Text='<%#Eval("urunid") %>' Visible="false"></asp:TextBox> 
        <h3><%#Eval("urunadi") %></h3> 
        <p>Ürün hakkında detaylı bilgi için tıklayınız.</p> 
       </figcaption> 
      </figure> 
     </li> 
    </ItemTemplate> 
</asp:Repeater> 
<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:aytasarimConnectionString %>" SelectCommand="SELECT [urunid], [urunadi], [urunkategoriadi], [urunresmi] FROM [urun]"></asp:SqlDataSource> 

default.aspx.cs page and my SQL code (SELECT code) is here:

Répondre

0

Je suppose que vous ne pouvez pas accéder à la zone de texte, car il est à l'intérieur du répéteur. Cela signifie que vous avez plus d'une zone de texte. Vous pouvez y accéder avec le code suivant:

foreach (RepeaterItem item in Repeater2.Items) 
{ 
    TextBox txtName= (TextBox)item.FindControl("TxtUrunID"); 
    if(txtName!=null) 
    { 
    //do something with txtName.Text 
    } 
} 
+0

Merci monsieur. Ça fonctionne. – Shadouspan