Todas las formas en que puedo pensar para hacer esto parecen muy hackish. ¿Cuál es la forma correcta de hacer esto, o al menos más común?Accediendo a cuadros de texto en Repeater Control
Estoy recuperando un conjunto de imágenes de una consulta LINQ-a-SQL y lo enlace de datos y algunos otros datos a un repetidor. Necesito agregar un cuadro de texto a cada elemento en el repetidor que permitirá al usuario cambiar el título de cada imagen, muy similar a Flickr.
¿Cómo accedo a los cuadros de texto en el control del repetidor y sé a qué imagen pertenece ese cuadro de texto?
Aquí es lo que el control del repetidor se vería así, con un botón de envío que actualizar todas las filas de la imagen en LINQ to SQL:
alt text http://casonclagg.com/layout.jpg
Editar:
Este código funciona
Solo asegúrate de no volar tus valores de distancia por Binding outsi de de if (! Page.IsPostBack) me gusta .. Vaya.
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<div class="itemBox">
<div class="imgclass">
<a title='<%# Eval("Name") %>' href='<%# Eval("Path") %>' rel="gallery">
<img alt='<%# Eval("Name") %>' src='<%# Eval("Path") %>' width="260" />
</a>
</div>
<asp:TextBox ID="TextBox1" Width="230px" runat="server"></asp:TextBox>
</div>
</ItemTemplate>
</asp:Repeater>
y presentar Click:
protected void Button1_Click(object sender, EventArgs e)
{
foreach (RepeaterItem item in Repeater1.Items)
{
TextBox txtName = (TextBox)item.FindControl("TextBox1");
if (txtName != null)
{
string val = txtName.Text;
//do something with val
}
}
}
¿Está tratando de acceder a los cuadros de texto en el cliente o en el servidor después de una devolución de datos? –
Servidor en Submit_Click – Jason