public override string RenderContent() { TagBuilder tagHeader = null; //panels-heading TagBuilder tagBody = null; //panels-body TagBuilder tagFooter = null; //panels-footer if (!HeaderHTML.IsNullOrEmpty() || (HeaderButtons != null && HeaderButtons.Count > 0)) { tagHeader = new TagBuilder("div"); tagHeader.Attributes["id"] = Id + "-heading"; tagHeader.Attributes["class"] = "panels-heading"; if (!HeaderHTML.IsNullOrEmpty()) { tagHeader.AppendInnerHtml(HeaderHTML); } if (HeaderButtons != null && HeaderButtons.Count > 0) { TagBuilder btnDiv = new TagBuilder("div"); btnDiv.Attributes["id"] = Id + "-heading-btn"; btnDiv.Attributes["class"] = "btn-panels-heading"; HeaderButtons = HeaderButtons.OrderBy(c => c.Rank).ToList(); foreach (Link button in HeaderButtons) { button.CssClass = "btn btn-xs btn-default"; btnDiv.AppendInnerHtml(button.Render()); } tagHeader.AppendInnerHtml(btnDiv.ToString()); } } if (Content != null) { tagBody = new TagBuilder("div"); tagBody.Attributes["id"] = Id + "-body"; tagBody.Attributes["class"] = "panels-body"; Content = Content.OrderBy(c => c.Rank).ToList(); foreach (PageControlBase control in Content) { tagBody.AppendInnerHtml(control.Render()); } } if (!FooterHTML.IsNullOrWhiteSpace()) { tagFooter = new TagBuilder("div"); tagFooter.Attributes["id"] = Id + "-footer"; tagFooter.Attributes["class"] = "panels-footer"; tagFooter.AppendInnerHtml(FooterHTML); } TagBuilder[] tagArray = { tagHeader, tagBody, tagFooter }; string result = ""; foreach (TagBuilder tag in tagArray) { if (tag != null) { result += tag.ToString(); } } return(result); }
/// <summary> /// 呈现HTML /// </summary> /// <returns></returns> public string Render() { string documentType = "<!DOCTYPE html>\n"; TagBuilder html = new TagBuilder("html"); html.AppendInnerHtml(RenderHeader()); html.AppendInnerHtml(RenderBody()); return(documentType + html.ToString()); }
/// <summary> /// 注册脚本语句块 /// </summary> /// <param name="key"></param> /// <param name="scriptContent"></param> public void RegisterScriptBlock(string key, string scriptContent) { key = "ScriptContent-{0}".FormatTo(key); if (!keys.Contains(key)) { keys.Add(key); script.AppendInnerHtml(scriptContent); } }
private string RenderBody() { TagBuilder body = new TagBuilder("body"); body.AddCssClass(CssClass); body.AppendInnerHtml(RenderControls()); body.AppendInnerHtml(System.Web.Optimization.Scripts.Render("~/script/common.js").ToHtmlString()); body.AppendInnerHtml(System.Web.Optimization.Scripts.Render("~/script/widget.js").ToHtmlString()); foreach (var jsFile in scripts) { body.AppendInnerHtml(jsFile.ToString()); } script.AppendInnerHtml("$(function(){\n" + startUpScript.ToString() + "\n});"); body.AppendInnerHtml(script.ToString()); return(body.ToString()); }
private static void Test3() { string documentType = "<!DOCTYPE html>\n"; TagBuilder html = new TagBuilder("html"); TagBuilder header = new TagBuilder("head"); TagBuilder title = new TagBuilder("title"); TagBuilder body = new TagBuilder("body"); header.AppendInnerHtml(title.ToString()); body.AppendInnerHtml("<h3>Test</h3>"); html.AppendInnerHtml(header.ToString()); html.AppendInnerHtml(body.ToString()); Console.WriteLine(documentType + html.ToString()); }
/// <summary> /// 注册样式语句块 /// </summary> /// <param name="key"></param> /// <param name="styleContent"></param> public void RegisterStyleContent(string key, string styleContent) { key = "CssContent-{0}".FormatTo(key); if (!keys.Contains(key)) { keys.Add(key); style.AppendInnerHtml(styleContent); } }
private string RenderHeader() { TagBuilder header = new TagBuilder("head"); TagBuilder title = new TagBuilder("title"); title.SetInnerText(Title); foreach (var key in metas.Keys) { header.AppendInnerHtml(metas[key].ToString(TagRenderMode.SelfClosing)); } header.AppendInnerHtml(title.ToString()); header.AppendInnerHtml(System.Web.Optimization.Styles.Render("~/style/common.css").ToHtmlString()); foreach (var cssFile in links) { header.AppendInnerHtml(cssFile.ToString(TagRenderMode.SelfClosing)); } if (!style.InnerHtml.IsNullOrEmpty()) { header.InnerHtml += style.ToString(); } return(header.ToString()); }