/// <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()); }
/// <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()); }