Hi Tom,
After you bind the repeater, you should be able to get it with
lblCntrl = Repeater1.Controls(0).FindControl("Label1")
Sample code below.
Ken
Private Sub Page_Load _
(ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles MyBase.Load
Dim lblCntrl As Label
Repeater1.DataSource = CreateDataSource()
Repeater1.DataMember = "StringValue"
Repeater1.DataBind()
lblCntrl = Repeater1.Controls(0).FindControl("Label1")
lblCntrl.Text = "The new text"
End Sub
Function CreateDataSource() As DataTable
Dim dt As New DataTable
Dim dr As DataRow
dt.Columns.Add(New DataColumn _
("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn _
("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn _
("CurrencyValue", GetType(Double)))
dt.Columns.Add(New DataColumn _
("Boolean", GetType(Boolean)))
Dim i As Integer
For i = 0 To 8
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " + i.ToString()
dr(2) = 1.23 * (i + 1)
dr(3) = (i = 4)
dt.Rows.Add(dr)
Next i
Return dt
End Function 'CreateDataSource
<form id="Form1" method="post" runat="server">
<ul>
<asp:Repeater id="Repeater1" runat="server">
<HeaderTemplate>
<table>
<tr>
<td>
<asp:Label ID="Label1" runat="server">My label</asp:Label>
</td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<li>
<asp:Label id="Label3" runat="server">
<%# DataBinder.Eval(Container, "DataItem.StringValue") %>
</asp:Label>
</li>
</ItemTemplate>
</asp:Repeater>
</ul>
</form>