[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

microsoft.public.dotnet.framework.aspnet.buildingcontrols

Adding controls to the ItemTemplate of a Repeater in a CompositeControl

Nathan Sokalski

12/24/2007 2:58:00 AM

I am write a CompositeControl, and one of the controls being included is a
Repeater. This is my first time including a templated control in a control
other than a UserControl. I am not sure how to add controls to the templates
or how to do the databinding when using the Repeater (or any other templated
control) in a CompositeControl. Can somebody please help me here? Thanks.
--
Nathan Sokalski
njsokalski@hotmail.com
http://www.nathansok...


2 Answers

l.holota

12/26/2007 9:51:00 AM

0

Hi,

repeaters templates are ITemplates, so you can not add the controls
straightly to them, because ITemplate doesn't have a Controls collection.
Solution is simple, insert any control to Repeaters ItemTemplate (or any
other template), get the control in code by
Repeater.FindControl("YourControlID") and add your controls to it's Controls
collection. Use different ID's in each Template.

Regards,

Lukas Holota

"Nathan Sokalski" <njsokalski@hotmail.com> wrote in message
news:ur9v6idRIHA.1212@TK2MSFTNGP05.phx.gbl...
> I am write a CompositeControl, and one of the controls being included is a
> Repeater. This is my first time including a templated control in a control
> other than a UserControl. I am not sure how to add controls to the
> templates or how to do the databinding when using the Repeater (or any
> other templated control) in a CompositeControl. Can somebody please help
> me here? Thanks.
> --
> Nathan Sokalski
> njsokalski@hotmail.com
> http://www.nathansok...
>

Coskun SUNALI [MVP]

12/26/2007 5:07:00 PM

0

Hi Nathan,

You can create templates by implementing ITemplate interface. I will give
you a sample example below. All you need to do is to create your control
structure using the "container" control. "InstantiateIn" method will be
executed automatically when the RepeaterItem is created by the Framework.
You can set your template like this:

#######################
Repeater1.ItemTemplate = new MyRepeaterItemTemplate();
#######################

You can also create different kinds of constructors to deliver some data to
the template.

And the template class something like below:

#######################
public class MyRepeaterItemTemplate : ITemplate
{

#region ITemplate Members

public void InstantiateIn(Control container)
{
// do something else
container.Controls.Add(new LiteralControl("Some text"));
}

#endregion
}
#######################

--
All the best,
Coskun SUNALI
MVP ASP/ASP.NET
http://...


"Nathan Sokalski" <njsokalski@hotmail.com> wrote in message
news:ur9v6idRIHA.1212@TK2MSFTNGP05.phx.gbl...
>I am write a CompositeControl, and one of the controls being included is a
>Repeater. This is my first time including a templated control in a control
>other than a UserControl. I am not sure how to add controls to the
>templates or how to do the databinding when using the Repeater (or any
>other templated control) in a CompositeControl. Can somebody please help me
>here? Thanks.
> --
> Nathan Sokalski
> njsokalski@hotmail.com
> http://www.nathansok...
>