/// <summary>
        /// Get html representation
        /// </summary>
        /// <returns>html</returns>
        override public string GetHtml()
        {
            // validate value within range and compute percent
            float value = (float)Convert.ToDouble(GetValue());

            if (value < minValue)
            {
                value = minValue;
            }
            else if (value > maxValue)
            {
                value = maxValue;
            }
            float range    = maxValue - minValue;
            int   pctValue = (int)(value * 100 / range);

            string sliderID  = UniqueID;
            string displayID = UniqueID + "_display";

            HtmlBuilder b = new HtmlBuilder();

            b.open("tr");
            b.open("th"); b.append(b.text(Label + ":")); b.close("th");
            b.open("td");

            b.open("div", b.attr("class", "carpe_horizontal_slider_display_combo"));
            b.open("div", b.attr("class", "carpe_horizontal_slider_track"));
            b.open("div", b.attr("class", "carpe_slider_slit"));
            b.nbsp();
            b.close("div");
            b.open("div", b.attr("class", "carpe_slider",
                                 "id", sliderID,
                                 "display", displayID,
                                 "style", b.fmt("left: {0}px;", pctValue.ToString())));
            b.nbsp();
            b.close("div");
            b.close("div");
            b.open("div", b.attr("class", "carpe_slider_display_holder"));

            string attr = b.attr("class", "carpe_slider_display",
                                 "name", UniqueID,
                                 "id", displayID,
                                 "type", "text",
                                 "from", minValue.ToString(),
                                 "to", maxValue.ToString(),
                                 "value", value.ToString(),
                                 "valuecount", valueCount.ToString(),
                                 "decimals", decimals.ToString(),
                                 "typelock", "off") + GetExtraAttributes();

            if (Form.AutoSubmit)
            {
                attr += b.attr("onchange", "this.form.submit();");
            }
            b.open("input", attr);

            b.close("input");
            b.close("div");
            b.close("div");
            return(b.ToString());
        }