2 * Namespace: System.Web.UI.WebControls
\r
3 * Class: DataListItem
\r
5 * Authors: Gaurav Vaish, Gonzalo Paniagua (gonzalo@ximian.com)
\r
6 * Maintainer: gvaish@iitk.ac.in
\r
7 * Contact: <my_scripts2001@yahoo.com>, <gvaish@iitk.ac.in>
\r
8 * Implementation: yes
\r
11 * (C) Gaurav Vaish (2002)
\r
12 * (c) 2002 Ximian, Inc. (http://www.ximian.com)
\r
16 using System.Collections;
\r
18 using System.Web.UI;
\r
19 using System.ComponentModel;
\r
21 namespace System.Web.UI.WebControls
\r
23 [ToolboxItem(false)]
\r
24 public class DataListItem : WebControl, INamingContainer
\r
27 ListItemType itemType;
\r
30 public DataListItem(int itemIndex, ListItemType itemType)
\r
32 this.itemIndex = itemIndex;
\r
33 this.itemType = itemType;
\r
36 public virtual object DataItem
\r
48 public virtual int ItemIndex
\r
56 public virtual ListItemType ItemType
\r
64 public virtual void RenderItem (HtmlTextWriter writer, bool extractRows, bool tableLayout)
\r
68 foreach (Control ctrl in Controls){
\r
76 throw new HttpException ("Template table not found!");
\r
78 foreach (TableRow row in tbl.Rows)
\r
79 row.RenderControl (writer);
\r
82 RenderContents (writer);
\r
84 RenderControl (writer);
\r
89 protected override Style CreateControlStyle()
\r
91 return new TableItemStyle();
\r
94 protected override bool OnBubbleEvent(object source, EventArgs e)
\r
96 if(e is CommandEventArgs)
\r
98 RaiseBubbleEvent(this, new DataListCommandEventArgs(this, source, (CommandEventArgs)e));
\r
104 protected internal virtual void SetItemType(ListItemType itemType)
\r
106 if(Enum.IsDefined(typeof(ListItemType), itemType))
\r
108 this.itemType = itemType;
\r