示例#1
0
        /// <summary>
        /// Creates a description list with the associated descriptions
        /// </summary>
        /// <param name="isHorizontal">
        /// Make terms and descriptions in line up side-by-side.
        /// </param>
        /// <param name="elements">
        /// The dictionary of descriptions by title (key) and description
        /// (value).
        /// </param>
        public MvcHtmlString DescriptionList(bool isHorizontal, IDictionary <string, string> elements)
        {
            if (elements == null)
            {
                return(null);
            }

            var root = new TagBuilderExt("dl");

            if (isHorizontal)
            {
                root.AddCssClass("dl-horizontal");
            }

            foreach (var element in elements)
            {
                root.CreateChildTag("dt", element.Key);
                root.CreateChildTag("dd", element.Value);
            }

            return(root.ToMvcHtmlString());
        }
示例#2
0
        /// <summary>
        /// Creates a Bootstrap progress-bar with a defined
        /// <paramref name="style"/>, <paramref name="color"/> and
        /// <paramref name="progress"/>.
        /// </summary>
        /// <param name="style">The style of the progress bar</param>
        /// <param name="color">The color of the progress bar</param>
        /// <param name="progress">The current progress percentage</param>
        public MvcHtmlString ProgressBar(ProgressBarStyle style, ProgressBarColor color, double progress)
        {
            var progressTag = new TagBuilderExt("div");

            progressTag.AddCssClass("progress");

            switch (color)
            {
            case ProgressBarColor.Info:
                progressTag.AddCssClass("progress-info");
                break;

            case ProgressBarColor.Success:
                progressTag.AddCssClass("progress-success");
                break;

            case ProgressBarColor.Warning:
                progressTag.AddCssClass("progress-warning");
                break;

            case ProgressBarColor.Danger:
                progressTag.AddCssClass("progress-danger");
                break;
            }

            switch (style)
            {
            case ProgressBarStyle.Animated:
                progressTag.AddCssClass("active");
                break;

            case ProgressBarStyle.Striped:
                progressTag.AddCssClass("progress-striped");
                break;
            }

            var barTag = progressTag.CreateChildTag("div");

            barTag.AddCssClass("bar");
            barTag.MergeAttribute("style", string.Format("width: {0}%", progress));
            return(progressTag.ToMvcHtmlString());
        }