HTMLTextAreaElement
Represents a HTML textarea element.
namespace AngleSharp.DOM.Html
{
[DOM("HTMLTextAreaElement")]
public sealed class HTMLTextAreaElement : HTMLTextFormControlElement
{
public enum WrapType : ushort
{
Soft,
Hard
}
[DOM("wrap")]
public WrapType Wrap {
get {
return Element.ToEnum(GetAttribute("wrap"), WrapType.Soft);
}
set {
SetAttribute("wrap", value.ToString());
}
}
[DOM("defaultValue")]
public override string DefaultValue {
get {
return TextContent;
}
set {
TextContent = value;
}
}
[DOM("textLength")]
public int TextLength {
get {
return base.Value.Length;
}
}
[DOM("rows")]
public uint Rows {
get {
return Element.ToInteger(GetAttribute("rows"), 2);
}
set {
SetAttribute("rows", value.ToString());
}
}
[DOM("cols")]
public uint Cols {
get {
return Element.ToInteger(GetAttribute("cols"), 20);
}
set {
SetAttribute("cols", value.ToString());
}
}
[DOM("type")]
public string Type {
get {
return _name;
}
}
protected internal override bool IsSpecial => true;
internal bool IsMutable {
get {
if (!base.Disabled)
return !base.Readonly;
return false;
}
}
internal HTMLTextAreaElement()
{
_name = "textarea";
base.WillValidate = true;
}
internal override void ConstructDataSet(FormDataSet dataSet, HTMLElement submitter)
{
dataSet.Append(base.Name, base.Value, Type.ToString());
if (_attributes[AttributeNames.DirName] != null) {
string value = _attributes[AttributeNames.DirName].Value;
if (!string.IsNullOrEmpty(value))
dataSet.Append(value, base.Dir.ToString().ToLower(), "Direction");
}
}
protected override void Check(ValidityState state)
{
}
}
}