Wrox Home  
Search P2P Archive for: Go

  Return to Index  

aspx_professional thread: Repeater FindControl problem onitemcreated


Message #1 by "FERRERES" <wferreres@n...> on Mon, 3 Feb 2003 17:03:10
Hello,
I have problem with FindControl method in a repeater itemcreated method.
The ASPX code I would like to use is like that :
<table class="ContentTable" cellpadding="0" cellspacing="0">
<asp:Repeater ID="rptActivities" 
OnItemDataBound="rptActivities_OnItemDataBound" 
OnItemCreated="rptActivities_OnItemCreated" Runat="server">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<tr class="EvenContentRow" id="EvenContentRow" onclick="nodeClick(this)">
<td class="Expander">
<img class="ExpanderOut" onmouseover="if ( this.className != 'ExpanderIn') 
this.className = 'ExpanderIn';" 
onmouseleave="this.className = 'ExpanderOut';" src="style/expander.gif" 
id="expander"></td>
</td>
</tr>
<tr style="display:none">
<td></td>
<td colspan="99">
<div class="ExpandedDetail">
<asp:DataList ID="dtlDetail" OnItemCreated="dtlDetail_ItemCreated" 
RepeatColumns="3" RepeatLayout="Flow" RepeatDirection="Horizontal" 
Runat="server">
<ItemStyle></ItemStyle>
<ItemTemplate>
</ItemTemplate>
</asp:DataList>
</div>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>

protected void rptActivities_OnItemCreated(object sender, 
RepeaterItemEventArgs e)
{
if ((e.Item.ItemType == ListItemType.Item)||(e.Item.ItemType == 
ListItemType.AlternatingItem))
{


System.Web.UI.WebControls.DataList childCtrl = e.Item.FindControl
("dtlDetail") as System.Web.UI.WebControls.DataList;
if (childCtrl != null)
{
	DataRowView drv = e.Item.DataItem as System.Data.DataRowView;
	//Copy DataTable
	DataTable dt = new DataTable();
	dt = drv.Row.Table.Clone();           				
	
	DataRow dr = drv.Row;
	dt.ImportRow(dr);
	DataSet ds = new DataSet();
	ds.Tables.Add(dt);
	DataView dv = ds.Tables[0].DefaultView;
	childCtrl.DataSource =  dv;
	childCtrl.DataBind();
}


So in this, i would like to be able to findcontrol EvenContentRow and had 
other cells.
And in second time, i would like the datalist and bind it.
When I am in this method, i can't have reference to these controls.
Does anyone know why ?
thanks for answers.

  Return to Index