[ControlBuilder(typeof(LiteralControlBuilder))]
[DataBindingHandler("System.Web.UI.Design.TextDataBindingHandler, " + Consts.AssemblySystem_Design)]
[DefaultProperty("Text")]
-#if NET_2_0
[Designer ("System.Web.UI.Design.WebControls.LiteralDesigner, " + Consts.AssemblySystem_Design, "System.ComponentModel.Design.IDesigner")]
-#endif
public class Literal : Control
-#if NET_2_0
, ITextControl
-#endif
{
public Literal ()
{
}
-#if NET_2_0
[DefaultValue (LiteralMode.Transform)]
- [MonoTODO]
[WebSysDescription ("")]
[WebCategory ("Behavior")]
public LiteralMode Mode
{
get {
- throw new NotImplementedException ();
+ return ViewState ["Mode"] == null ? LiteralMode.Transform : (LiteralMode) ViewState ["Mode"];
}
set {
- throw new NotImplementedException ();
+ if (((int) value) < 0 || ((int) value) > 2)
+ throw new ArgumentOutOfRangeException ();
+ ViewState ["Mode"] = value;
}
}
-#endif
[Bindable(true)]
[DefaultValue("")]
[WebSysDescription ("")]
[WebCategory ("Appearance")]
-#if NET_2_0
[Localizable (true)]
-#endif
public string Text {
get {
return ViewState.GetString ("Text", String.Empty);
}
}
-#if NET_2_0
[EditorBrowsable (EditorBrowsableState.Never)]
- [MonoTODO]
public override void Focus ()
{
- throw new NotImplementedException ();
+ throw new NotSupportedException ();
}
-#endif
protected override ControlCollection CreateControlCollection ()
{
obj.GetType ()));
}
-#if NET_2_0
protected internal
-#else
- protected
-#endif
override void Render (HtmlTextWriter output)
{
+ if (Mode == LiteralMode.Encode)
+ output.Write (HttpUtility.HtmlEncode (Text));
+ else
output.Write (Text);
}
}