/// <summary> /// In HTML konvertieren /// </summary> /// <returns>Das Control als HTML</returns> public override IHtmlNode ToHtml() { var classes = new List <string>(); classes.Add(Class); classes.Add("profile"); var img = null as HtmlElement; if (!string.IsNullOrWhiteSpace(Image)) { img = new HtmlElementImg() { Src = Image, Class = "" }; } else if (!string.IsNullOrWhiteSpace(User)) { var split = User.Split(' '); var i = split[0].FirstOrDefault().ToString(); i += split.Count() > 1 ? split[1].FirstOrDefault().ToString() : ""; img = new HtmlElementB(new HtmlText(i)) { Class = "bg-info text-light" }; } var html = new HtmlElementDiv(img, new HtmlText(User)) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; if (Modal != null) { html.AddUserAttribute("data-toggle", "modal"); html.AddUserAttribute("data-target", "#" + Modal.ID); return(new HtmlList(html, Modal.ToHtml())); } return(html); }
/// <summary> /// In HTML konvertieren /// </summary> /// <returns>Das Control als HTML</returns> public override IHtmlNode ToHtml() { var classes = new List <string>(); classes.Add(Class); switch (Color) { case TypesTextColor.Muted: classes.Add("text-muted"); break; case TypesTextColor.Primary: classes.Add("text-primary"); break; case TypesTextColor.Success: classes.Add("text-success"); break; case TypesTextColor.Info: classes.Add("text-info"); break; case TypesTextColor.Warning: classes.Add("text-warning"); break; case TypesTextColor.Danger: classes.Add("text-danger"); break; case TypesTextColor.Light: classes.Add("text-light"); break; case TypesTextColor.Dark: classes.Add("text-dark"); break; case TypesTextColor.White: classes.Add("text-white"); break; } switch (BackgroundColor) { case TypesBackgroundColor.Primary: classes.Add("bg-primary"); break; case TypesBackgroundColor.Secondary: classes.Add("bg-secondary"); break; case TypesBackgroundColor.Success: classes.Add("bg-success"); break; case TypesBackgroundColor.Info: classes.Add("bg-info"); break; case TypesBackgroundColor.Warning: classes.Add("bg-warning"); break; case TypesBackgroundColor.Danger: classes.Add("bg-danger"); break; case TypesBackgroundColor.Light: classes.Add("bg-light"); break; case TypesBackgroundColor.Dark: classes.Add("bg-dark"); break; case TypesBackgroundColor.White: classes.Add("bg-white"); break; case TypesBackgroundColor.Transparent: classes.Add("bg-transparent"); break; } switch (HorizontalAlignment) { case TypesHorizontalAlignment.Left: classes.Add("float-left"); break; case TypesHorizontalAlignment.Right: classes.Add("float-right"); break; } var html = null as HtmlElement; switch (Format) { case TypesTextFormat.Paragraph: html = new HtmlElementP(Text) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; break; case TypesTextFormat.Italic: html = new HtmlElementI(Text) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; break; case TypesTextFormat.Bold: html = new HtmlElementB(Text) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; break; case TypesTextFormat.H1: html = new HtmlElementH1(Text) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; break; case TypesTextFormat.H4: html = new HtmlElementH4(Text) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; break; case TypesTextFormat.Span: html = new HtmlElementSpan(new HtmlText(Text)) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; break; default: html = new HtmlElementDiv(new HtmlText(Text)) { ID = ID, Class = string.Join(" ", classes.Where(x => !string.IsNullOrWhiteSpace(x))), Style = Style, Role = Role }; break; } if (!string.IsNullOrWhiteSpace(Tooltip)) { html.AddUserAttribute("data-toggle", "tooltip"); html.AddUserAttribute("title", Tooltip); } return(html); }