فهرست منبع

Added files:
CalendarDay.cs
CheckBox.cs
DayRenderEventHandler.cs

Changing:
WebControl.cs

svn path=/trunk/mcs/; revision=1276

Gaurav Vaish 24 سال پیش
والد
کامیت
d55f22bcd9

+ 2 - 2
mcs/class/System.Web/System.Web.UI.WebControls/AdCreatedEventHandler.cs

@@ -1,10 +1,10 @@
 /**
  * Namespace: System.Web.UI.WebControls
- * Class:     AdCreatedEventHandler
+ * Delegate:  AdCreatedEventHandler
  * 
  * Author:  Gaurav Vaish
  * Contact: <[email protected]>
- * Status:  10??%
+ * Status:  100%
  * 
  * (C) Gaurav Vaish (2001)
  */

+ 2 - 0
mcs/class/System.Web/System.Web.UI.WebControls/BaseDataList.cs

@@ -171,6 +171,8 @@ namespace System.Web.UI.WebControls
 			}
 		}
 
+		//protected override void 
+
 		protected abstract void CreateControlHierarchy(bool useDataSource);
 	}
 }

+ 1 - 1
mcs/class/System.Web/System.Web.UI.WebControls/BaseValidator.cs

@@ -10,10 +10,10 @@
  */
 
 using System;
+using System.ComponentModel;
 using System.Web;
 using System.Web.UI;
 using System.Drawing;
-using System.ComponentModel;
 
 namespace System.Web.UI.WebControls
 {

+ 391 - 2
mcs/class/System.Web/System.Web.UI.WebControls/Calendar.cs

@@ -4,12 +4,13 @@
  * 
  * Author:  Gaurav Vaish
  * Contact: <[email protected]>, <[email protected]>
- * Status:  20%
+ * Status:  60%
  * 
  * (C) Gaurav Vaish (2001)
  */
 
 using System;
+using System.Collections;
 using System.Web;
 using System.Web.UI;
 
@@ -19,7 +20,20 @@ namespace System.Web.UI.WebControls
 	{
 		//
 		
-		private TableItemStyle dayHeaderStyle;
+		private TableItemStyle          dayHeaderStyle;
+		private TableItemStyle          dayStyle;
+		private TableItemStyle          otherMonthDayStyle;
+		private SelectedDatesCollection selectedDates;
+		private ArrayList               selectedDatesList;
+		private TableItemStyle          selectedDayStyle;
+		private TableItemStyle          selectorStyle;
+		private TableItemStyle          titleStyle;
+		private TableItemStyle          todayDayStyle;
+		private TableItemStyle          weekendDayStyle;
+
+		private static readonly object DayRenderEvent        = new object();
+		private static readonly object SelectionChangedEvent = new object();
+
 		public Calendar(): base()
 		{
 			//TODO: Initialization
@@ -83,11 +97,386 @@ namespace System.Web.UI.WebControls
 				ViewState["DayNameFormat"] = value;
 			}
 		}
+
+		public TableItemStyle DayStyle
+		{
+			get
+			{
+				if(dayStyle==null)
+					dayStyle = new TableItemStyle();
+				return dayStyle;
+			}
+		}
+		
+		public FirstDayOfWeek FirstDayOfWeek
+		{
+			get
+			{
+				object o = ViewState["FirstDayOfWeek"];
+				if(o!=null)
+					return (FirstDayOfWeek)o;
+				return FirstDayOfWeek.Default;
+			}
+			set
+			{
+				if(!System.Enum.IsDefined(typeof(FirstDayOfWeek), value))
+					throw new ArgumentException();
+				ViewState["FirstDayOfWeek"] = value;
+			}
+		}
+		
+		public string NextMonthText
+		{
+			get
+			{
+				object o = ViewState["NextMonthText"];
+				if(o!=null)
+					return (string)o;
+				return "&gt;";
+			}
+			set
+			{
+				ViewState["NextMonthText"] = value;
+			}
+		}
+		
+		public NextPrevFormat NextPrevFormat
+		{
+			get
+			{
+				object o = ViewState["NextPrevFormat"];
+				if(o!=null)
+					return (NextPrevFormat)o;
+				return NextPrevFormat.CustomText;
+			}
+			set
+			{
+				if(!System.Enum.IsDefined(typeof(NextPrevFormat), value))
+					throw new ArgumentException();
+				ViewState["NextPrevFormat"] = value;
+			}
+		}
+		
+		public TableItemStyle OtherMonthDayStyle
+		{
+			get
+			{
+				if(otherMonthDayStyle == null)
+					otherMonthDayStyle = new TableItemStyle();
+				return otherMonthDayStyle;
+			}
+		}
+		
+		public string PrevMonthText
+		{
+			get
+			{
+				object o = ViewState["PrevMonthText"];
+				if(o!=null)
+					return (string)o;
+				return "&lt;";
+			}
+			set
+			{
+				ViewState["PrevMonthText"] = value;
+			}
+		}
+		
+		public DateTime SelectedDate
+		{
+			// TODO: Am I right here? I got confused with the "Remarks" written in the documentation
+			/*
+			 * Looks like I have to first do something with SelectionMode,
+			 * then with SelectedDates,
+			 * Update when SelectionChanged is called => Link to the function.
+			 * Pretty confused at this point
+			*/
+			get
+			{
+				object o = ViewState["SelectedDate"];
+				if(o!=null)
+					return (DateTime)o;
+				return DateTime.MinValue;
+			}
+			set
+			{
+				ViewState["SelectedDate"] = value;
+			}
+		}
+		
+		public SelectedDatesCollection SelectedDates
+		{
+			get
+			{
+				if(selectedDates==null)
+				{
+					if(selectedDatesList == null)
+						selectedDatesList = new ArrayList();
+					selectedDates = new SelectedDatesCollection(selectedDatesList);
+				}
+				return selectedDates;
+			}
+		}
+		
+		public TableItemStyle SelectedDayStyle
+		{
+			get
+			{
+				if(selectedDayStyle==null)
+					selectedDayStyle = new TableItemStyle();
+				return selectedDayStyle;
+			}
+		}
+
+		public CalendarSelectionMode SelectionMode
+		{
+			get
+			{
+				object o = ViewState["SelectionMode"];
+				if(o!=null)
+					return (CalendarSelectionMode)o;
+				return CalendarSelectionMode.Day;
+			}
+			set
+			{
+				if(!System.Enum.IsDefined(typeof(CalendarSelectionMode), value))
+					throw new ArgumentException();
+				ViewState["SelectionMode"] = value;
+			}
+		}
+		
+		public string SelectedMonthText
+		{
+			get
+			{
+				object o = ViewState["SelectedMonthText"];
+				if(o!=null)
+					return (string)o;
+				return "&gt;&gt;";
+			}
+			set
+			{
+				ViewState["SelectedMonthText"] = value;
+			}
+		}
+
+		public TableItemStyle SelectorStyle
+		{
+			get
+			{
+				if(selectorStyle==null)
+					selectorStyle = new TableItemStyle();
+				return selectorStyle;
+			}
+		}
+		
+		public string SelectedWeekText
+		{
+			get
+			{
+				object o = ViewState["SelectedWeekText"];
+				if(o!=null)
+					return (string)o;
+				return "&gt;";
+			}
+			set
+			{
+				ViewState["SelectedWeekText"] = value;
+			}
+		}
+		
+		public bool ShowDayHeader
+		{
+			get
+			{
+				object o = ViewState["ShowDayHeader"];
+				if(o!=null)
+					return (bool)o;
+				return true;
+			}
+			set
+			{
+				ViewState["ShowDayHeader"] = value;
+			}
+		}
+		
+		public bool ShowGridLines
+		{
+			get
+			{
+				object o = ViewState["ShowGridLines"];
+				if(o!=null)
+					return (bool)o;
+				return false;
+			}
+			set
+			{
+				ViewState["ShowGridLines"] = value;
+			}
+		}
+		
+		public bool ShowNextPrevMonth
+		{
+			get
+			{
+				object o = ViewState["ShowNextPrevMonth"];
+				if(o!=null)
+					return (bool)o;
+				return true;
+			}
+			set
+			{
+				ViewState["ShowNextPrevMonth"] = value;
+			}
+		}
+		
+		public bool ShowTitle
+		{
+			get
+			{
+				object o = ViewState["ShowTitle"];
+				if(o!=null)
+					return (bool)o;
+				return true;
+			}
+			set
+			{
+				ViewState["ShowTitle"] = value;
+			}
+		}
+
+		public TitleFormat TitleFormat
+		{
+			get
+			{
+				object o = ViewState["TitleFormat"];
+				if(o!=null)
+					return (TitleFormat)o;
+				return TitleFormat.MonthYear;
+			}
+			set
+			{
+				if(!System.Enum.IsDefined(typeof(TitleFormat), value))
+					throw new ArgumentException();
+				ViewState["TitleFormat"] = value;
+			}
+		}
+		
+		public TableItemStyle TitleStyle
+		{
+			get
+			{
+				if(titleStyle==null)
+					titleStyle = new TableItemStyle();
+				return titleStyle;
+			}
+		}
+		
+		public TableItemStyle TodayDayStyle
+		{
+			get
+			{
+				if(todayDayStyle==null)
+					todayDayStyle = new TableItemStyle();
+				return todayDayStyle;
+			}
+		}
+		
+		public DateTime TodaysDate
+		{
+			get
+			{
+				object o = ViewState["TodaysDate"];
+				if(o!=null)
+					return (DateTime)o;
+				return DateTime.Today;
+			}
+			set
+			{
+				ViewState["TodaysDate"] = value;
+			}
+		}
+		
+		public DateTime VisibleDate
+		{
+			get
+			{
+				object o = ViewState["VisibleDate"];
+				if(o!=null)
+					return (DateTime)o;
+				return DateTime.MinValue;
+			}
+			set
+			{
+				ViewState["VisibleDate"] = value;
+			}
+		}
+		
+		public TableItemStyle WeekendDayStyle
+		{
+			get
+			{
+				if(weekendDayStyle == null)
+					weekendDayStyle = new TableItemStyle();
+				return weekendDayStyle;
+			}
+		}
+		
+		public event DayRenderEventHandler DayRender
+		{
+			add
+			{
+				Events.AddHandler(DayRenderEvent, value);
+			}
+			remove
+			{
+				Events.RemoveHandler(DayRenderEvent, value);
+			}
+		}
+		
+		public event EventHandler SelectionChanged
+		{
+			add
+			{
+				Events.AddHandler(SelectionChangedEvent, value);
+			}
+			remove
+			{
+				Events.RemoveHandler(SelectionChangedEvent, value);
+			}
+		}
+
+		protected virtual void OnDayRender(TableCell cell, CalendarDay day)
+		{
+			if(Events!=null)
+			{
+				DayRenderEventHandler dreh = (DayRenderEventHandler)(Events[DayRenderEvent]);
+				if(dreh!=null)
+					dreh(this, new DayRenderEventArgs(cell, day));
+			}
+		}
+		
+		protected virtual void OnSelectionChanged()
+		{
+			if(Events!=null)
+			{
+				EventHandler eh = (EventHandler)(Events[SelectionChangedEvent]);
+				if(eh!=null)
+					eh(this, new EventArgs());
+			}
+		}
 		
 		public void RaisePostBackEvent(string eventArgument)
 		{
 			//TODO: THE LOST WORLD
 			// Written to keep compile get going
 		}
+		
+		protected override void Render(HtmlTextWriter writer)
+		{
+			//TODO: Ofcourse, I have to override this function
+		}
+		
+		//TODO: Recheck, I am through with all the functions?
 	}
 }

+ 110 - 0
mcs/class/System.Web/System.Web.UI.WebControls/CalendarDay.cs

@@ -0,0 +1,110 @@
+/**
+ * Namespace: System.Web.UI.WebControls
+ * Class:     CalendarDay
+ * 
+ * Author:  Gaurav Vaish
+ * Contact: <[email protected]>, <[email protected]>
+ * Status:  100%
+ * 
+ * (C) Gaurav Vaish (2001)
+ */
+
+using System;
+using System.Web;
+using System.Web.UI;
+
+namespace System.Web.UI.WebControls
+{
+	public class CalendarDay
+	{
+		private DateTime date;
+		private bool     isWeekend;
+		private bool     isToday;
+		private bool     isSelected;
+		private bool     isOtherMonth;
+		private bool     isSelectable;
+		private string   dayNumberText;
+
+		public CalendarDay(DateTime date, bool isWeekend, bool isToday, bool isSelected, bool isOtherMonth, string dayNumberText)
+		{
+			this.date = date;
+			this.isWeekend = isWeekend;
+			this.isToday = isToday;
+			this.isSelected = isSelected;
+			this.isOtherMonth = isOtherMonth;
+			this.dayNumberText = dayNumberText;
+		}
+		
+		public DateTime Date
+		{
+			get
+			{
+				return date;
+			}
+		}
+		
+		public string DayNumberText
+		{
+			get
+			{
+				return dayNumberText;
+			}
+		}
+		
+		public bool IsOtherMonth
+		{
+			get
+			{
+				return isOtherMonth;
+			}
+		}
+		
+		public bool IsSelectable
+		{
+			get
+			{
+				return isSelectable;
+			}
+			set
+			{
+				isSelectable = value;
+			}
+		}
+		
+		public bool IsSelected
+		{
+			get
+			{
+				return isSelected;
+			}
+			set
+			{
+				isSelected = value;
+			}
+		}
+		
+		public bool IsToday
+		{
+			get
+			{
+				return isToday;
+			}
+			set
+			{
+				isToday = value;
+			}
+		}
+		
+		public bool IsWeekend
+		{
+			get
+			{
+				return isWeekend;
+			}
+			set
+			{
+				isWeekend = value;
+			}
+		}
+	}
+}

+ 133 - 0
mcs/class/System.Web/System.Web.UI.WebControls/CheckBox.cs

@@ -0,0 +1,133 @@
+/**
+ * Namespace: System.Web.UI.WebControls
+ * Class:     CheckBox
+ * 
+ * Author:  Gaurav Vaish
+ * Contact: <[email protected]>, <[email protected]>
+ * Status:  60%
+ * 
+ * (C) Gaurav Vaish (2001)
+ */
+
+using System;
+using System.Collections;
+using System.Collections.Specialized;
+using System.Web;
+using System.Web.UI;
+
+namespace System.Web.UI.WebControls
+{
+	public class CheckBox : WebControl, IPostBackDataHandler
+	{
+		private static readonly object CheckedChangedEvent = new object();
+
+		public CheckBox()
+		{
+			//
+		}
+		
+		public virtual bool AutoPostBack
+		{
+			get
+			{
+				object o = ViewState["AutoPostBack"];
+				if(o!=null)
+					return (bool)AutoPostBack;
+				return false;
+			}
+			set
+			{
+				ViewState["AutoPostBack"] = value;
+			}
+		}
+		
+		public virtual bool Checked
+		{
+			get
+			{
+				object o = ViewState["Checked"];
+				if(o!=null)
+					return (bool)o;
+				return false;
+			}
+			set
+			{
+				ViewState["Checked"] = value;
+			}
+		}
+
+		public virtual string Text
+		{
+			get
+			{
+				object o = ViewState["Text"];
+				if(o!=null)
+					return (string)o;
+				return String.Empty;
+			}
+			set
+			{
+				ViewState["Text"] = value;
+			}
+		}
+		
+		public virtual TextAlign TextAlign
+		{
+			get
+			{
+				object o = ViewState["TextAlign"];
+				if(o!=null)
+					return (TextAlign)o;
+				return TextAlign.Right;
+			}
+			set
+			{
+				if(!System.Enum.IsDefined(typeof(TextAlign), value))
+					throw new ArgumentException();
+				ViewState["TextAlign"] = value;
+			}
+		}
+		
+		public event EventHandler CheckedChanged
+		{
+			add
+			{
+				Events.AddHandler(CheckedChangedEvent, value);
+			}
+			remove
+			{
+				Events.RemoveHandler(CheckedChangedEvent, value);
+			}
+		}
+		
+		protected virtual void OnCheckedChanged(EventArgs e)
+		{
+			if(Events!=null)
+			{
+				EventHandler eh = (EventHandler)(Events[CheckedChangedEvent]);
+				if(eh!=null)
+					eh(this, e);
+			}
+		}
+		
+		protected override void Render(HtmlTextWriter writer)
+		{
+			//TODO: THE LOST WORLD!
+			// I know I have to do it.
+		}
+		
+		public bool LoadPostData(string postDataKey, NameValueCollection postCollection)
+		{
+			//TODO: THE LOST WORLD
+			// Now what the hell is this!
+			return false;
+		}
+		
+		public void RaisePostDataChangedEvent()
+		{
+			//TODO: THE LOST WORLD...
+			// Raise the bucket out of the well :))
+			OnCheckedChanged(EventArgs.Empty);
+		}
+	}
+}

+ 25 - 6
mcs/class/System.Web/System.Web.UI.WebControls/DataList.cs

@@ -44,6 +44,7 @@ namespace System.Web.UI.WebControls
 
 			alternatingItemTemplate = null;
 			editItemTemplate        = null;
+			footerTemplate          = null;
 			
 			extractTemplateRows = false;
 		}
@@ -92,12 +93,6 @@ namespace System.Web.UI.WebControls
 			}
 		}
 		
-		//TODO: To implement the following functions found in the DataList abstract class
-		/*
-		 * PrepareControlHierarchy()
-		 * CreateControlHeirarchy(bool)
-		 */
-		 
 		public virtual ITemplate EditItemTemplate
 		{
 			get
@@ -141,5 +136,29 @@ namespace System.Web.UI.WebControls
 				footerTemplate = value;
 			}
 		}
+		
+		//TODO: To implement the following functions found in the BaseDataList abstract class
+		/*
+		 * PrepareControlHierarchy()
+		 * CreateControlHeirarchy(bool)
+		 */
+		 
+		public void CreateControlHierarchy(bool create)
+		{
+			//TODO: THE LOST WORLD
+			// Put here to get compilation going
+		}
+		
+		//Impemented methods/properties of IRepeatInfoUser
+		//TODO: Check all these implementations are valid or a total absurd
+		public bool HasFooter
+		{
+			get
+			{
+				if(footerTemplate!=null)
+					return true;
+				return false;
+			}
+		}
 	}
 }

+ 15 - 0
mcs/class/System.Web/System.Web.UI.WebControls/DayRenderEventHandler.cs

@@ -0,0 +1,15 @@
+/**
+ * Namespace: System.Web.UI.WebControls
+ * Delegate:  DayRenderEventHandler
+ * 
+ * Author:  Gaurav Vaish
+ * Contact: <[email protected]>
+ * Status:  100%
+ * 
+ * (C) Gaurav Vaish (2001)
+ */
+
+namespace System.Web.UI.WebControls
+{
+	public delegate void DayRenderEventHandler(object sender, DayRenderEventArgs e);
+}

+ 69 - 155
mcs/class/System.Web/System.Web.UI.WebControls/WebControl.cs

@@ -4,7 +4,7 @@
  * 
  * Author:  Gaurav Vaish
  * Contact: <[email protected]>, <[email protected]>
- * Status:  10%??
+ * Status:  15%??
  * 
  * (C) Gaurav Vaish (2001)
  */
@@ -21,205 +21,119 @@ namespace System.Web.UI.WebControls
 	{
 		//TODO: A list of private members may be incomplete
 
-		private static int i = 0;
-		private string _accessKey = string.Empty;
-		private string _clientID;
-		private Color  _backColor    = Color.Empty;
-		private Color  _borderColor  = Color.Empty;
-		//private BorderStyle _bStyle;
-		private Unit   _borderWidth  = Unit.Empty;
-		private Style  _controlStyle = null;			//TODO: What's initial value?
-		private string _cssClass     = string.Empty;
-		private bool   _enabled      = true;
-		private FontInfo _font = new FontInfo();
+		private HtmlTextWriterTag    writerTag;
+		private string               stringTag;
+		private AttributesCollection attributes;
+		private StateBag             attributeState;
+		private Style                controlStyle;
 
-		// TODO: Should this have other methods called? or
-		// the values should be left blank - to be used up by the end-user?
-		private AttributeCollection _attributes = new AttributeCollection( new System.Web.UI.StateBag());
-
-		public virtual string AccessKey
+		// TODO: The constructors definitions
+		protected WebControl()
 		{
-			get
-			{
-				return _accessKey;
-			}
-			set
-			{
-				_accessKey = value;
-			}
+			//todo: what now?
+			controlStyle = null;
 		}
-
-		public virtual AttributeCollection Attributes
+		
+		public WebControl(HtmlTextWriterTag tag)
 		{
-			get
-			{
-				return _attributes;
-			}
+			//TODO: am i right?
+			writerTag = tag;
+			stringTag = null;
+			controlStyle = null;
 		}
 
-		public virtual Color BackColor
+		protected WebControl(string tag)
 		{
-			get
-			{
-					return _backColor;
-			}
-			set
-			{
-				_backColor = value;
-			}
+			//TODO: am i right?
+			stringTag = tag;
+			writerTag = null;
+			controlStyle = null;
 		}
-
-		public virtual Color BorderColor
+		
+		public virtual string AccessKey
 		{
 			get
 			{
-					return _borderColor;
+				object o = ViewState["AccessKey"];
+				if(o!=null)
+					return (string)o;
+				return String.Empty;
 			}
 			set
 			{
-				_borderColor = value;
+				ViewState["AccessKey"] = value;
 			}
 		}
-
-		// TODO: Confused with the enum BorderStyle and variable BorderStyle
-		//public virtual BorderStyle BorderStyle { get; set; }
-
-		public virtual Unit BorderWidth
+		
+		public AttributeCollection Attributes
 		{
-			get
-			{
-				return _borderWidth;
-			}
-			set
-			{
-				_borderWidth = value;
-			}
+			if(attributes==null)
+			{
+				//TODO: From where to get StateBag and how? I think this method is OK!
+				if(attributeState == null)
+				{
+					attributeState = new StateBag(true);
+					if(attributeState.IsTrackingViewState)
+					{
+						attributeState.TrackViewState();
+					}
+				}
+				attributes = new AttributeCollection(attributes);
+			}
+			return attributes;
 		}
-
-		public override string ClientID
+		
+		public Style ControlStyle		
 		{
 			get
 			{
-				_clientID = "WebControl" + i++;
-				return _clientID;
+				if(controlStyle == null)
+				{
+					controlStyle = CreateControlStyle();
+					if(IsTrackingViewState)
+					{
+						controlStyle.TrackViewState();
+					}
+					controlStyle.LoadViewState(null);
+				}
+				return controlStyle;
 			}
 		}
-
-		public Style ControlStyle
+		
+		public bool ControlStyleCreated
 		{
 			get
 			{
-				return _controlStyle;
+				return (controlStyle!=null);
 			}
 		}
 		
-		// TODO: The exact purpose of the field is not known
-		// public bool ControlStyleCreated { get; }
-
 		public virtual string CssClass
 		{
 			get
 			{
-				return _cssClass;
-			}
-			set
-			{
-				_cssClass = value;
-			}
-		}
-
-		public virtual bool Enabled
-		{
-			get
-			{
-				return _enabled;
-			}
-			set
-			{
-				_enabled = value;
-			}
-		}
-
-		public virtual FontInfo Font
-		{
-			get
-			{
-				return _font;
+				if(ControlStyleCreated)
+					return controlStyle.CssClass;
+				return String.Empty;
 			}
 		}
-
-		// TODO: The constructors definitions
-		protected WebControl()
-		{
-		}
-
-		public WebControl(HtmlTextWriterTag tag)
-		{
-		}
-
-		protected WebControl(string tag)
+		
+		public 
+		
+		protected virtual Style CreateControlStyle()
 		{
+			return new Style(ViewState); // from parent class Control
 		}
-
-		// Implemented procedures
 		
+		// Implemented procedures
 		public string GetAttribute(string key)
 		{
 			return "";
 		}
 		
 		public void SetAttribute(string key, string val)
-		{
-			
+		{			
 		}
 
-/*
-		// Properties
-		public ControlCollection Controls { virtual get; }
-		public Style ControlStyle { get; }
-		public bool ControlStyleCreated { get; }
-		public bool EnableViewState { virtual get; virtual set; }
-		public FontInfo Font { virtual get; }
-		public Color ForeColor { virtual get; virtual set; }
-		public Unit Height { virtual get; virtual set; }
-		public string ID { virtual get; virtual set; }
-		public Control NamingContainer { virtual get; }
-		public Page Page { virtual get; virtual set; }
-		public Control Parent { virtual get; }
-		public ISite Site { virtual get; virtual set; }
-		public CssStyleCollection Style { get; }
-		public short TabIndex { virtual get; virtual set; }
-		public string TemplateSourceDirectory { virtual get; }
-		public string ToolTip { virtual get; virtual set; }
-		public string UniqueID { virtual get; }
-		public bool Visible { virtual get; virtual set; }
-		public Unit Width { virtual get; virtual set; }
-
-		// Events
-		public event EventHandler DataBinding;
-		public event EventHandler Disposed;
-		public event EventHandler Init;
-		public event EventHandler Load;
-		public event EventHandler PreRender;
-		public event EventHandler Unload;
-
-		// Methods
-		public void ApplyStyle(System.Web.UI.WebControls.Style s);
-		public void CopyBaseAttributes(System.Web.UI.WebControls.WebControl controlSrc);
-		public virtual void DataBind();
-		public virtual void Dispose();
-		public virtual bool Equals(object obj);
-		public virtual System.Web.UI.Control FindControl(string id);
-		public virtual int GetHashCode();
-		public Type GetType();
-		public virtual bool HasControls();
-		public void MergeStyle(System.Web.UI.WebControls.Style s);
-		public virtual void RenderBeginTag(System.Web.UI.HtmlTextWriter writer);
-		public void RenderControl(System.Web.UI.HtmlTextWriter writer);
-		public virtual void RenderEndTag(System.Web.UI.HtmlTextWriter writer);
-		public string ResolveUrl(string relativeUrl);
-		public void SetRenderMethodDelegate(System.Web.UI.RenderMethod renderMethod);
-		public virtual string ToString();
-//*/
 	}
 }