* Calendar.cs: Match MS postback data. This allows sites that
[mono.git] / mcs / class / System.Web / System.Web.UI.WebControls / Literal.cs
1 //
2 // System.Web.UI.WebControls.Literal.cs
3 //
4 // Authors:
5 //   Gaurav Vaish (gvaish@iitk.ac.in)
6 //   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
7 //
8 // (C) Gaurav Vaish (2002)
9 // (C) 2003 Andreas Nahr
10 //\r
11 \r
12 using System;\r
13 using System.Web;\r
14 using System.Web.UI;\r
15 using System.ComponentModel;\r
16 \r
17 namespace System.Web.UI.WebControls\r
18 {\r
19         [DefaultProperty("Text")]\r
20         [ControlBuilder(typeof(LiteralControlBuilder))]\r
21         [DataBindingHandler("System.Web.UI.Design.TextDataBindingHandler, " + Consts.AssemblySystem_Design)]\r
22         public class Literal : Control\r
23         {\r
24                 public Literal () : base ()\r
25                 {\r
26                 }\r
27
28                 [DefaultValue (""), Bindable (true), WebCategory ("Appearance")]
29                 [WebSysDescription ("The text for the literal WebControl.")]\r
30                 public string Text\r
31                 {\r
32                         get {\r
33                                 object o = ViewState ["Text"];\r
34                                 return (o == null) ? String.Empty : (string) o;\r
35                         }\r
36 \r
37                         set { ViewState ["Text"] = value; }\r
38                 }\r
39 \r
40                 protected override ControlCollection CreateControlCollection ()\r
41                 {\r
42                         return new EmptyControlCollection (this);\r
43                 }\r
44 \r
45                 protected override void AddParsedSubObject (object obj)\r
46                 {\r
47                         if (!(obj is LiteralControl))\r
48                                 throw new HttpException (HttpRuntime.FormatResourceString (\r
49                                                         "Cannot_Have_Children_Of_Type", "Literal",\r
50                                                         obj.GetType ().Name.ToString ()));\r
51 \r
52                         Text = ((LiteralControl) obj).Text;\r
53                 }\r
54 \r
55                 protected override void Render (HtmlTextWriter writer)\r
56                 {\r
57                         if (Text.Length > 0)\r
58                                 writer.Write (Text);\r
59                 }\r
60         }\r
61 }\r
62 \r