Repeater

Repeaterdisposable

System.Web.UI.WebControls (system.web.dll)class

This class represents a special kind of data-bound list control that can contain repeating buttons, static text, and other controls. The Repeater control requires more work than a straightforward DataGrid or DataList control because it contains no built-in styles or layout. Instead, you must create templates for the Repeater using HTML and ASP.NET tags in the .aspx file. Each template is bracketed inside the appropriate template tag (like <ItemTemplate>). You do not set the corresponding System.Web.UI.ITemplate properties of this class directly.

Every Repeater control requires an ItemTemplate. Additionally, an AlternatingItemTemplate can be used to allow items to alternate between two styles. These two templates will be bound when you use the DataBind( ) method. The other templates, like HeaderTemplate, FooterTemplate, and SeparatorTemplate, will not. If the DataSource property is set but no data is returned, only the HeaderTemplate and FooterTemplate will be rendered. If the DataSource property is not set (it will be null by default), the control is not rendered at all.

The Repeater control is unique because it allows you to enter any HTML content in a template, and even split HTML tags across more than one template. To use a table in your Repeater control, you should include the begin table tag (<table>) in the HeaderTemplate and the end table tag (</table>) in the FooterTemplate. You can then use a single table row tag (<tr>) in the ItemTemplate and multiple table data tags (<td>).

The Repeater has no built-in support for item selection or editing. You can include a Button control inside an ItemTemplate, although you will have to write its tag manually, rather than using the Visual Studio .NET designer. When the user clicks this button, a ItemCommand event will be fired. This event provides additional information about the selected button and list item.

public class Repeater : System.Web.UI.Control, System.Web.UI.INamingContainer { // Public Constructors    public Repeater( ); // Public Instance Properties    public virtual ITemplate AlternatingItemTemplate{set; get; }    public override ControlCollection Controls{get; }             // overrides System.Web.UI.Control    public virtual string DataMember{set; get; }    public virtual object DataSource{set; get; }    public virtual ITemplate FooterTemplate{set; get; }    public virtual ITemplate HeaderTemplate{set; get; }    public virtual RepeaterItemCollection Items{get; }    public virtual ITemplate ItemTemplate{set; get; }    public virtual ITemplate SeparatorTemplate{set; get; } // Public Instance Methods    public override void DataBind( );                 // overrides System.Web.UI.Control // Protected Instance Methods    protected override void CreateChildControls( );                // overrides System.Web.UI.Control    protected virtual void CreateControlHierarchy(bool useDataSource);    protected virtual RepeaterItem CreateItem(int itemIndex,         ListItemType itemType);    protected virtual void InitializeItem(RepeaterItem item);    protected override bool OnBubbleEvent(object sender, EventArgs e); // overrides System.Web.UI.Control    protected override void OnDataBinding(EventArgs e);          // overrides System.Web.UI.Control    protected virtual void OnItemCommand(RepeaterCommandEventArgs e);    protected virtual void OnItemCreated(  RepeaterItemEventArgs e);    protected virtual void OnItemDataBound(RepeaterItemEventArgs e); // Events    public event RepeaterCommandEventHandler ItemCommand;    public event RepeaterItemEventHandler ItemCreated;    public event RepeaterItemEventHandler ItemDataBound; }

Hierarchy

System.Object System.Web.UI.Control(System.ComponentModel.IComponent, System.IDisposable, System.Web.UI.IParserAccessor, System.Web.UI.IDataBindingsAccessor) Repeater(System.Web.UI.INamingContainer)



ASP. NET in a Nutshell
ASP.NET in a Nutshell, Second Edition
ISBN: 0596005202
EAN: 2147483647
Year: 2003
Pages: 873

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net