public Textbox(string text, string placeholder = null, 
			bool multiLine = false, int? rows = null,
			TextboxSize size = null, GridSize gridSize = null, 
			string width = null, string height = null, 
			string helpText = null, 
			string clientId = null)
            : base("_Textbox",clientId)
        {
            SetText(text)
                .SetPlaceholder(placeholder)
                .SetMultiLine(multiLine, rows)
                .SetSize(size, gridSize, width, height)
                .SetHelpText(helpText);
        }
    public static MvcHtmlString UxTextbox(this HtmlHelper helper,
		string text,
		string placeholder = null,
		bool multiLine = false,
		int? rows = null,
		TextboxSize size = null,
		GridSize gridSize = null,
		string width = null,
		string height = null,
		string helpText = null,
		string clientId = null)
    {
        var textbox = new Textbox(text, placeholder,
            multiLine, rows, size, gridSize,
            width, height, helpText, clientId);
        return helper.RenderUxControl(textbox);
    }
 public Textbox SetSize(TextboxSize size = null, GridSize gridSize = null, string width = null, string height= null)
 {
     Size = size ?? TextboxSize.Default;
     GridSize = gridSize ?? GridSize.NotSet;
     Width = width;
     Height = height;
     return this;
 }