
14/01/2010, 04:05
|
| | Fecha de Ingreso: enero-2010
Mensajes: 3
Antigüedad: 15 años, 2 meses Puntos: 0 | |
Respuesta: findControl en Repeater anidado Buenas , ya se que hace mucho de este post, pero de todas formas pongo la solución por si alguien la esa buscando y da con este post.
Como bien dice el amigo , accede a traves del evento ItemDataBound del repeater para acceder a los elementos del primer repeater, pues la solucion es usar otro para el segundo repeater...
ejemplo:
<asp:repeater id="rptuno" runat="server" OnItemDataBound="RptUno_ItemDataBound">
<ItemTemplate>
<asp:repeater id="rptDos" runat="server" OnItemDataBound="RptDos_ItemDataBound">
<ItemTemplate>
<asp:RadioButton id="rbcontol" runat="server" />
</ItemTemplate>
</asp:repeater>
</ItemTemplate>
</asp:repeater>
Bien si queremos acceder al radioButton del segundo repeater tendriamos que hacer lo siguiente. -Primero añadimos un origen de datos al segundo repeater.
protected void RptrLinks_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
((Repeater)e.Item.FindControl("rptDos")).DataSourc e = ListaDatos;
((Repeater)e.Item.FindControl("rptDos")).DataBind( );
}
} -Ahora Accedemos al RadioButton ...
protected void RptDos_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
((RadioButton)e.Item.FindControl("rbcontol")).Chec ked = true;
}
}
Bueno espero que la solución sirva a mas de uno.
Un saludo
Última edición por Hiunkeru; 14/01/2010 a las 04:10
Razón: olvidada una cosa
|