/// <summary>
        /// Adds a TextArea node.
        /// </summary>
        /// <param name="root"> The root node.</param>
        /// <param name="text"> The node text.</param>
        /// <param name="tag"> The HtmlTextAreaTag.</param>
        public void AddTextArea(FormEditorNode root, string text,HtmlTextAreaTag tag)
        {
            FormEditorNode node = new FormEditorNode();

            // add it to root node
            root.Nodes.Add(node);

            node.Text=text;
            node.BaseHtmlTag = tag;

            TextBox[] textboxes;

            textboxes = GetTextBoxArray(1);
            textboxes[0].Size = new Size(300,15);
            textboxes[0].Name = "txtValue";
            textboxes[0].Text = tag.Value;
            node.AddTextControl("Value:",textboxes[0],new EventHandler(TextAreaChangeValue));
        }
        /// <summary>
        /// Adds a Input node.
        /// </summary>
        /// <param name="root"> The root node.</param>
        /// <param name="text"> The node text.</param>
        /// <param name="inputTag"> The HtmlInputTag.</param>
        public void AddInput(FormEditorNode root, string text,HtmlInputTag inputTag)
        {
            FormEditorNode node = new FormEditorNode();

            // add it to root node
            root.Nodes.Add(node);

            node.Text=text;
            node.BaseHtmlTag = inputTag;

            TextBox[] textboxes;

            switch (inputTag.Type)
            {
                case HtmlInputType.Button:
                    textboxes = GetTextBoxArray(1);
                    textboxes[0].Name = "txtValue";
                    textboxes[0].Text = inputTag.Value;
                    node.AddTextControl("Value:",textboxes[0],new EventHandler(TextChangeValue));
                    break;
                case HtmlInputType.Checkbox:
                    textboxes = GetTextBoxArray(1);
                    textboxes[0].Name = "txtValue";
                    textboxes[0].Text = inputTag.Value;
                    node.AddTextControl("Value:",textboxes[0],new EventHandler(TextChangeValue));
                    break;
                case HtmlInputType.Text:
                    textboxes = GetTextBoxArray(1);
                    textboxes[0].Name = "txtValue";
                    textboxes[0].Text = inputTag.Value;
                    node.AddTextControl("Value:",textboxes[0],new EventHandler(TextChangeValue));
                    break;
                case HtmlInputType.Submit:
                    textboxes = GetTextBoxArray(1);
                    textboxes[0].Name = "txtValue";
                    textboxes[0].Text = inputTag.Value;
                    node.AddTextControl("Value:",textboxes[0],new EventHandler(TextChangeValue));
                    break;
                case HtmlInputType.Password:
                    textboxes = GetTextBoxArray(1);
                    textboxes[0].Name = "txtValue";
                    textboxes[0].Text = inputTag.Value;
                    node.AddTextControl("Value:",textboxes[0],new EventHandler(TextChangeValue));
                    break;
                default:
                    textboxes = GetTextBoxArray(1);
                    textboxes[0].Name = "txtValue";
                    textboxes[0].Text = inputTag.Value;
                    node.AddTextControl("Value:",textboxes[0],new EventHandler(TextChangeValue));
                    break;
            }
        }