/// <summary> /// Init. /// </summary> /// <param name="parent">the parent box of this box</param> /// <param name="tag">the html tag data of this box</param> public CssBoxFrame(CssBox parent, HtmlTag tag) : base(parent, tag) { _imageWord = new CssRectImage(this); Words.Add(_imageWord); Uri uri; if (Uri.TryCreate(GetAttribute("src"),UriKind.Absolute, out uri)) { if(uri.Host.IndexOf("youtube.com",StringComparison.InvariantCultureIgnoreCase) > -1) { _isVideo = true; LoadYoutubeDataAsync(uri); } else if (uri.Host.IndexOf("vimeo.com",StringComparison.InvariantCultureIgnoreCase) > -1) { _isVideo = true; LoadVimeoDataAsync(uri); } } if (!_isVideo) { SetErrorBorder(); } }
public CustomUIAttribute(int fieldOrder, int fieldLength, HtmlTag tag, string fieldDisplayName) { _FieldOrder = fieldOrder; _FieldLength = fieldLength; _Tag = tag; _FieldDisplayName = fieldDisplayName; }
public void ApplyTo(IHtmlNode target) { var filtered = column.Grid.DataProcessor.FilterDescriptors.SelectRecursive(filter => { CompositeFilterDescriptor compositeDescriptor = filter as CompositeFilterDescriptor; if (compositeDescriptor != null) { return compositeDescriptor.FilterDescriptors; } return null; }) .Where(filter => filter is FilterDescriptor) .OfType<FilterDescriptor>() .Any(filter => filter.Member.IsCaseInsensitiveEqual(column.Member)); var wrapper = new HtmlTag("div") .AddClass("t-grid-filter", "t-state-default") .ToggleClass("t-active-filter", filtered); wrapper.AppendTo(target); var icon = new HtmlTag("span").AddClass("t-icon", "t-filter"); icon.AppendTo(wrapper); }
public override void Build(ElementRequest request, HtmlTag tag) { // todo can we narrow down for numbers that it's a whole number (probably need a regex to allow commas too) tag.AllTags() .Where(t => t.IsInputElement()) .ForEach(t => t.AddClass("number")); }
public void add_returns_the_newly_created_child_tag() { var original = new HtmlTag("div"); var child = original.Add("span"); child.ToString().ShouldEqual("<span></span>"); original.ToString().ShouldEqual("<div><span></span></div>"); }
public void append_all_tags_from_a_sequence() { var sequence = new[] { new HtmlTag("br"), new HtmlTag("hr") }; var parent = new HtmlTag("div"); parent.Append(sequence); parent.ToString().ShouldEqual("<div><br></br><hr /></div>"); }
public override HtmlTag Build(ElementRequest request) { HtmlTag root = new HtmlTag("div").Attr("data-bind", "foreach: "+ CCHtmlConventionsKO.DeriveElementName(request)); var child = new HtmlTag("div").Attr("data-bind", "text: $data" ); root.Append(child); return root; }
public TableTag() : base("table") { _header = new HtmlTag("thead", this); _footer = new HtmlTag("tfoot", this).Render(false); _body = new HtmlTag("tbody", this); }
public override void Build(ElementRequest request, HtmlTag tag) { tag .AllTags() .Where(t => t.IsInputElement()) .ForEach(t => t.AddClass("email")); }
public void parent_property_is_set_correctly_using_append() { var child = new HtmlTag("span"); var tag = new HtmlTag("div").Append(child); tag.ShouldEqual(child.Parent); tag.Children[0].ShouldEqual(child); }
public static HtmlTag Div(this HtmlTag tag, Action<HtmlTag> configure) { var div = new HtmlTag("div"); configure(div); return tag.Append(div); }
public HtmlListInfo(HtmlTag htmlTag, int columns = 0, object htmlAttributes = null, TextLayout textLayout = TextLayout.Default) { HtmlTag = htmlTag; Columns = columns; HtmlAttributes = htmlAttributes; TextLayout = textLayout; }
public void do_not_write_closing_tag() { var tag = new HtmlTag("span").Id("id"); tag.NoClosingTag(); tag.ToString().ShouldEqual("<span id=\"id\">"); }
public override void Build(ElementRequest request, HtmlTag tag) { var range = request.Accessor.GetAttribute<RangeAttribute>(); tag.AllTags() .Where(t => t.IsInputElement()) .ForEach(t => AddRangeValidation(t, range)); }
public void ApplyTo(IHtmlNode target) { var hierarchyCell = new HtmlTag("th") .AddClass(UIPrimitives.Header, UIPrimitives.Grid.HierarchyCell); target.Children.Insert(0, hierarchyCell); }
public void is_visible_set_to_true_by_default() { var tag = new HtmlTag("div"); tag.Visible().ShouldBeTrue(); tag.ToString().ShouldEqual("<div></div>"); }
public static void AddElementName(ElementRequest request, HtmlTag tag) { if (tag.IsInputElement()) { tag.Attr("name", DeriveElementName(request)); } }
public IHtmlNode CellTag(DateTime day, string urlFormat, bool isOtherMonth) { IHtmlNode cell = new HtmlTag("td"); if (isOtherMonth) { cell.AddClass("t-other-month"); } else if(Calendar.Value != null && day.Day == Calendar.Value.Value.Day) { cell.AddClass(UIPrimitives.SelectedState); } if (Calendar.IsDateInRange(day)) { var href = GetUrl(day, urlFormat); IHtmlNode link = new HtmlTag("a") .AddClass(UIPrimitives.Link + (href != "#" ? " t-action-link" : string.Empty)) .Attribute("href", href) .Text(day.Day.ToString()); cell.Children.Add(link); } else { cell.Html(" "); } return cell; }
public void add_and_return_a_child_tag_by_type() { var original = new HtmlTag("div"); var child = original.Add<HiddenTag>(); child.ToString().ShouldEqual("<input type=\"hidden\" />"); original.ToString().ShouldEqual("<div><input type=\"hidden\" /></div>"); }
public void append_adds_a_new_child_and_return_the_original() { var parent = new HtmlTag("div"); var resultOfAppend = parent.Append("p"); resultOfAppend.ShouldBeTheSameAs(parent); parent.ToString().ShouldEqual("<div><p></p></div>"); }
public void create_and_return_a_link_as_a_child_of_another_tag() { var tag = new HtmlTag("div"); var link = tag.ActionLink("click", "important", "invoke"); link.ToString().ShouldEqual("<a href=\"#\" class=\"important invoke\">click</a>"); tag.ToString().ShouldEqual("<div><a href=\"#\" class=\"important invoke\">click</a></div>"); }
public override HtmlTag Build(ElementRequest request) { var ul = new HtmlTag("ul").Attr("data-bind", "foreach:" + CCHtmlConventionsKO.DeriveElementName(request)); var li = new HtmlTag("li"); li.Children.Add(new HtmlTag("span").Attr("data-bind", "text:$data")); ul.Children.Add(li); return ul; }
public void insert_before() { var tag = new HtmlTag("div"); tag.Add("span"); tag.InsertFirst(new HtmlTag("p")); tag.ToString().ShouldEqual("<div><p></p><span></span></div>"); }
public override HtmlTag Build(ElementRequest request) { HtmlTag root = new HtmlTag("a"); root.Attr("href", "mailto:" + request.StringValue()); root.Attr("name", request.Accessor.FieldName + "Link"); root.Append(new HtmlTag("span").Text(request.StringValue())); return root; }
public void is_input_element() { var tag = new HtmlTag("span"); tag.IsInputElement().ShouldBeFalse(); tag.TagName("input").IsInputElement().ShouldBeTrue(); tag.TagName("select").IsInputElement().ShouldBeTrue(); }
public void do_not_allow_spaces_in_class_names() { HtmlTag tag = new HtmlTag("div").Text("text"); typeof(ArgumentException).ShouldBeThrownBy(() => { tag.AddClass("a b c"); }); }
protected override IHtmlNode BuildCore() { var col = new HtmlTag("col", TagRenderMode.SelfClosing) .ToggleAttribute("style", "width:" + column.Width, column.Width.HasValue()) .ToggleAttribute("style", "display:none;", column.Hidden); return col; }
public void is_authorized_value_false_makes_tag_hidden_regardless_of_visibility() { var tag = new HtmlTag("div").Authorized(false); tag.ToString().ShouldBeEmpty(); tag.Visible(true).ToString().ShouldBeEmpty(); tag.Visible(false).ToString().ShouldBeEmpty(); }
public void can_opt_out_of_html_encoded_inner_text() { var tag = new HtmlTag("div"); tag.Text("<b>Hi</b>"); tag.Encoded(false); tag.ToString().ShouldEqual("<div><b>Hi</b></div>"); }
public void add_multiple_levels_of_nesting() { var tag = new HtmlTag("table"); tag.Add("tbody/tr/td").Text("some text"); tag.ToString() .ShouldEqual("<table><tbody><tr><td>some text</td></tr></tbody></table>"); }
private static void BuildNavEntries <T>(IUrlHelper urlHelper, List <TabDisplay <T> > tabs, HtmlTag tabTag, object commonRouteValues) where T : Enumeration <T>, ITabEnumeration { foreach (var tab in tabs.OrderBy(a => a.Tab.Value)) { var listItem = new HtmlTag("li"); if (!tab.IsEnabled) { listItem.AddClass("disabled"); } if (!tab.IsVisible) { listItem.AddClass("hidden"); } if (tab.IsSelected) { listItem.AddClass("active"); listItem.Append(new HtmlTag("a").Attr("href", "#").Text(tab.Tab.DisplayName)); } else { var url = urlHelper.Action(tab.Tab.ActionName, tab.Tab.ControllerName, commonRouteValues); listItem.Append(new HtmlTag("a").Attr("href", url).Text(tab.Tab.DisplayName)); } tabTag.Append(listItem); } }
public void wrapped_tag_will_not_be_authorized_if_the_original_tag_was_not_authorized() { var tag = new HtmlTag("a").Authorized(false); tag.WrapWith("span").Authorized().ShouldBeFalse(); }
public static string GetHtml(this Controller outcontroller, HtmlDesgin design, string htmlTitle, string resourceHtml = "", Guid?DefaultContrainerId = null, bool desginemode = false) { if (design == null || string.IsNullOrEmpty(design.Body)) { return(string.Empty); } var body = design.Body; var partialLoadFacade = ContentManagerComponent.Instance.PartialLoadFacade; Container Defaultcontainer = null; if (DefaultContrainerId.HasValue) { Defaultcontainer = ContentManagerComponent.Instance.ContainerFacade.Get(DefaultContrainerId); } var parser = new HtmlParser { ParseMethod = ParseMethod.All }; var sbElements = new StringBuilder(); parser.Parse(body); HtmlTag firsttag = null; var htmlTag = parser.Tags.First; if (htmlTag != null && !string.IsNullOrEmpty(htmlTag.Name)) { firsttag = htmlTag; } else { for (var i = 0; i < parser.Tags.Count; i++) { if (parser.Tags[i] == null || string.IsNullOrEmpty(parser.Tags[i].Name)) { continue; } firsttag = parser.Tags[i]; break; } } if (firsttag != null) { var span = new TagBuilder(firsttag.Name); foreach (HtmlAttribute attribute in htmlTag.Attributes) { if (span.Attributes.ContainsKey(attribute.Name)) { span.Attributes[attribute.Name] = firsttag.Attributes.AttributeValue(attribute.Value); } else { span.Attributes.Add(attribute.Name, attribute.Value); } } var partialLoadlist = partialLoadFacade.GetHtmlPartials(design.Id, SessionParameters.Culture, Defaultcontainer); outcontroller.GetPartialHtmlByUrl(partialLoadlist, Defaultcontainer); if (firsttag.Tags.Count > 0) { AddTag(ref span, outcontroller, htmlTitle, firsttag.Tags, partialLoadlist, resourceHtml, design.Id, desginemode); } sbElements.Append(span); } sbElements = sbElements.Replace("<theme>", ""); sbElements = sbElements.Replace("</theme>", ""); return(sbElements.ToString()); }
public HtmlControl(HtmlTag tag) : base(tag) { }
/// <summary> /// Sets the value property. This is a shorthand for the <see cref="HtmlTag.Attribute" /> method with 'value' as the /// attribute parameter value. /// </summary> /// <param name="htmlTag">This <see cref="HtmlTag" /></param> /// <param name="value">The value for the 'value' attribute</param> /// <param name="replaceExisting"> /// A value indicating whether the existing attribute, if any, should have its value replaced /// by the <paramref name="value" /> provided. /// </param> /// <returns>This <see cref="HtmlTag" /></returns> public static HtmlTag Value(this HtmlTag htmlTag, string value, bool replaceExisting = true) { return(htmlTag.Attribute("value", value, replaceExisting)); }
public void Empty_can_be_used_as_a_non_rendering_placeholder() { var tag = new HtmlTag("body").Append(HtmlTag.Empty()); tag.ToString().Equals("<body></body>"); }
public void append_and_modify_the_innermost_child() { var tag = new HtmlTag("body").Append("div > form > input", child => child.Id("first-name")); tag.ToString().ShouldEqual("<body><div><form><input id=\"first-name\" /></form></div></body>"); }
/// <summary> /// Sets the href property. This is a shorthand for the <see cref="HtmlTag.Attribute" /> method with 'href' as the /// attribute parameter value. /// </summary> /// <param name="htmlTag">This <see cref="HtmlTag" /></param> /// <param name="href">The value for the 'href' attribute</param> /// <param name="replaceExisting"> /// A value indicating whether the existing attribute, if any, should have its value replaced /// by the <paramref name="href" /> provided. /// </param> /// <returns>This <see cref="HtmlTag" /></returns> public static HtmlTag Href(this HtmlTag htmlTag, string href, bool replaceExisting = true) { return(htmlTag.Attribute("href", href, replaceExisting)); }
private HtmlReportTag OpenTag(string openingTag, HtmlTag tag) { AddLine(openingTag); _tabCount++; return(new HtmlReportTag(tag, CloseTag)); }
public JquerySelectorExtend Tag(HtmlTag tag) { AndSelector(tag.ToStringLower()); return(new JquerySelectorExtend(this.selector)); }
public static HtmlTag AddPlaceholder(this HtmlTag tag, string placeholder) { return(tag.Attr("placeholder", placeholder)); }
public static HtmlTag AddPattern(this HtmlTag tag, string pattern) { var retVal = tag.Data("pattern", pattern); return(retVal); }
public static HtmlTag AutoCapitalize(this HtmlTag tag) { return(tag.Data("autocapitalize", "true")); }
public HtmlBuilder BeginHtmlTag(HtmlTag tag, params string[] args) { return(BeginHtmlTag(tag, Nparams.Parse(args))); }
public void add_a_tag_by_tag_name() { HtmlTag element = document.Add("div/a").Text("hello"); element.TagName().ShouldEqual("a"); }
public HtmlBuilder EmptyHtmlTag(HtmlTag tag, params string[] args) { return(EmptyHtmlTag(tag, Nparams.Parse(args))); }
/// <summary> /// Sets the type property. This is a shorthand for the <see cref="HtmlTag.Attribute" /> method with 'type' as the /// attribute parameter value. /// </summary> /// <param name="htmlTag">This <see cref="HtmlTag" /></param> /// <param name="type">The value for the 'type' attribute</param> /// <param name="replaceExisting"> /// A value indicating whether the existing attribute, if any, should have its value replaced /// by the <paramref name="type" /> provided. /// </param> /// <returns>This <see cref="HtmlTag" /></returns> public static HtmlTag Type(this HtmlTag htmlTag, string type, bool replaceExisting = true) { return(htmlTag.Attribute("type", type, replaceExisting)); }
private static HtmlTag PageNumber <T>(PagedList <T> pagedContent, HtmlTag previousLink, HtmlTag nextLink) { if (previousLink == null && nextLink == null) { return(null); } var pageNumber = new HtmlTag("span"); pageNumber.Text(" " + pagedContent.PageNumber + " "); var listItem = new HtmlTag("li"); listItem.Append(pageNumber); return(listItem); }
/// <summary> /// Check the current matched set of elements against a tag, element and return true /// </summary> public static JquerySelectorExtend Is(this JquerySelectorExtend selector, HtmlTag tag) { return(selector.Is(r => r.Tag(tag))); }
/// <summary> /// Sets the id property. This is a shorthand for the <see cref="HtmlTag.Attribute" /> method with 'id' as the attribute /// parameter value. /// </summary> /// <param name="htmlTag">This <see cref="HtmlTag" /></param> /// <param name="id">The value for the 'id' attribute</param> /// <param name="replaceExisting"> /// A value indicating whether the existing attribute, if any, should have its value replaced /// by the <paramref name="id" /> provided. /// </param> /// <returns>This <see cref="HtmlTag" /></returns> public static HtmlTag Id(this HtmlTag htmlTag, string id, bool replaceExisting = true) { return(htmlTag.Attribute("id", id, replaceExisting)); }
public bool Check(int count, HtmlKeywordReplacementInfo keyword, int position, HtmlTag tag, HtmlKeywordReplacementInfo previousKeyword, int previousPosition) { bool allow = true; while (tag != null) { if (tag.Name.Equals("a", StringComparison.InvariantCultureIgnoreCase)) { allow = false; break; } tag = tag.Parent; } return(allow); }
/// <summary> /// Sets the name property. This is a shorthand for the <see cref="HtmlTag.Attribute" /> method with 'name' as the /// attribute parameter value. /// </summary> /// <param name="htmlTag">This <see cref="HtmlTag" /></param> /// <param name="name">The value for the 'name' attribute</param> /// <param name="replaceExisting"> /// A value indicating whether the existing attribute, if any, should have its value replaced /// by the <paramref name="name" /> provided. /// </param> /// <returns>This <see cref="HtmlTag" /></returns> public static HtmlTag Name(this HtmlTag htmlTag, string name, bool replaceExisting = true) { return(htmlTag.Attribute("name", name, replaceExisting)); }
public void wrapped_tag_will_not_be_rendered_if_the_original_tag_was_not_to_be_rendered() { var tag = new HtmlTag("a").Render(false); tag.WrapWith("span").Render().ShouldBeFalse(); }
public FormLineExpression <T> Label(HtmlTag tag) { _chrome.LabelTag = tag; return(this); }
public void hide_renders_the_tag_but_sets_style_to_display_none() { var tag = new HtmlTag("div").Hide(); tag.Style("display").ShouldEqual("none"); }
public static HtmlTag SelectListBlock <T>(this IHtmlHelper <T> helper, Expression <Func <T, object> > expression, HtmlTag selectList, string helpTooltipText = null, bool includeBlankOption = false) where T : class { var label = helper.Label(expression); label = label.WrapWith(new DivTag().AddClasses("col-xs-4", "text-right")); var input = selectList; input = input.WrapWith(new DivTag().AddClasses("col-xs-6", "text-left")); var helpTooltip = helper.ToolTip(helpTooltipText); helpTooltip = helpTooltip.AddClasses("col-xs-2"); return(FormBlock(label, input, helpTooltip)); }
/// <summary> /// /// </summary> /// <param name="tag"></param> /// <param name="box"></param> private void TranslateAttributes(HtmlTag tag, CssBox box) { if (tag.HasAttributes()) { foreach (string att in tag.Attributes.Keys) { string value = tag.Attributes[att]; switch (att) { case HtmlConstants.Align: if (value == HtmlConstants.Left || value == HtmlConstants.Center || value == HtmlConstants.Right || value == HtmlConstants.Justify) { box.TextAlign = value.ToLower(); } else { box.VerticalAlign = value.ToLower(); } break; case HtmlConstants.Background: box.BackgroundImage = value.ToLower(); break; case HtmlConstants.Bgcolor: box.BackgroundColor = value.ToLower(); break; case HtmlConstants.Border: if (!string.IsNullOrEmpty(value) && value != "0") { box.BorderLeftStyle = box.BorderTopStyle = box.BorderRightStyle = box.BorderBottomStyle = CssConstants.Solid; } box.BorderLeftWidth = box.BorderTopWidth = box.BorderRightWidth = box.BorderBottomWidth = TranslateLength(value); if (tag.Name == HtmlConstants.Table) { if (value != "0") { ApplyTableBorder(box, "1px"); } } else { box.BorderTopStyle = box.BorderLeftStyle = box.BorderRightStyle = box.BorderBottomStyle = CssConstants.Solid; } break; case HtmlConstants.Bordercolor: box.BorderLeftColor = box.BorderTopColor = box.BorderRightColor = box.BorderBottomColor = value.ToLower(); break; case HtmlConstants.Cellspacing: box.BorderSpacing = TranslateLength(value); break; case HtmlConstants.Cellpadding: ApplyTablePadding(box, value); break; case HtmlConstants.Color: box.Color = value.ToLower(); break; case HtmlConstants.Dir: box.Direction = value.ToLower(); break; case HtmlConstants.Face: box.FontFamily = _cssParser.ParseFontFamily(value); break; case HtmlConstants.Height: box.Height = TranslateLength(value); break; case HtmlConstants.Hspace: box.MarginRight = box.MarginLeft = TranslateLength(value); break; case HtmlConstants.Nowrap: box.WhiteSpace = CssConstants.NoWrap; break; case HtmlConstants.Size: if (tag.Name.Equals(HtmlConstants.Hr, StringComparison.OrdinalIgnoreCase)) { box.Height = TranslateLength(value); } else if (tag.Name.Equals(HtmlConstants.Font, StringComparison.OrdinalIgnoreCase)) { box.FontSize = value; } break; case HtmlConstants.Valign: box.VerticalAlign = value.ToLower(); break; case HtmlConstants.Vspace: box.MarginTop = box.MarginBottom = TranslateLength(value); break; case HtmlConstants.Width: box.Width = TranslateLength(value); break; } } } }
public static ValidationResult Validation_1() { var nx = 5; var ny = 5; var nz = 5; #region model definition var grd = StructureGenerator.Generate3DTriangleElementGrid(nx, ny, nz); StructureGenerator.SetRandomiseSections(grd); StructureGenerator.SetRandomiseMaterial(grd); StructureGenerator.AddRandomiseNodalLoads(grd, LoadCase.DefaultLoadCase);//random nodal loads //StructureGenerator.AddRandomiseBeamUniformLoads(grd, LoadCase.DefaultLoadCase);//random elemental loads StructureGenerator.AddRandomDisplacements(grd, 0.3); #endregion StructureGenerator.AddRandomiseNodalLoads(grd, LoadCase.DefaultLoadCase);//random nodal loads grd.Solve_MPC(); var res = OpenseesValidator.OpenseesValidate(grd, LoadCase.DefaultLoadCase, false); var disp = res[0]; var reac = res[1]; var dispAbsErrIdx = disp.Columns.Cast <DataColumn>().ToList().FindIndex(i => i.ColumnName.ToLower().Contains("absolute")); var dispRelErrIdx = disp.Columns.Cast <DataColumn>().ToList().FindIndex(i => i.ColumnName.ToLower().Contains("relative")); var reacAbsErrIdx = reac.Columns.Cast <DataColumn>().ToList().FindIndex(i => i.ColumnName.ToLower().Contains("absolute")); var reacRelErrIdx = reac.Columns.Cast <DataColumn>().ToList().FindIndex(i => i.ColumnName.ToLower().Contains("relative")); var maxDispAbsError = disp.Rows.Cast <DataRow>().Max(ii => (double)ii.ItemArray[dispAbsErrIdx]); var maxDispRelError = disp.Rows.Cast <DataRow>().Max(ii => (double)ii.ItemArray[dispRelErrIdx]); var maxReacAbsError = reac.Rows.Cast <DataRow>().Max(ii => (double)ii.ItemArray[reacAbsErrIdx]); var maxReacRelError = reac.Rows.Cast <DataRow>().Max(ii => (double)ii.ItemArray[reacRelErrIdx]); //var buf = new ValidationResult(); var span = new HtmlTag("span"); span.Add("p").Text("Validate a 3D rame"); span.Add("h3").Text("Validate with"); span.Add("paragraph").Text("OpenSEES (the Open System for Earthquake Engineering Simulation) software (available via http://opensees.berkeley.edu/)"); span.Add("h3").Text("Validate objective"); span.Add("paragraph").Text("compare nodal displacement from BFE.net library and OpenSEES for a model consist of 3d bar elements with random material and section for each one, that forms a grid" + " with a randomized nodal loading and narrow erratic on location of joint of grid elements."); span.Add("h3").Text("Model Definition"); span.Add("paragraph") .Text(string.Format("A {0}x{1}x{2} grid, with {3} nodes and {4} bar elements.", nx, ny, nz, grd.Nodes.Count, grd.Elements.Count) + " Every node in the model have a random load on it."); span.Add("h3").Text("Validation Result"); span.Add("paragraph") .Text(string.Format("Validation output for nodal displacements:")); span.Add("p").AddClass("bg-info").AppendHtml(string.Format("-Max ABSOLUTE Error: {0:e3}<br/>-Max RELATIVE Error: {1:e3}", maxDispAbsError, maxDispRelError)); //span.Add("").Text(string.Format("Max ABSOLUTE Error: {0:e3}", maxAbsError)); var id = "tbl_" + Guid.NewGuid().ToString("N").Substring(0, 5); span.Add("button").Attr("type", "button").Text("Toggle Details").AddClasses("btn btn-primary") .Attr("onclick", string.Format("$('#{0}').collapse('toggle');", id)); var div = span.Add("div").AddClasses("panel-collapse", "collapse", "out").Id(id); var tbl = div.Add("table").AddClass("table table-striped table-inverse table-bordered table-hover"); tbl.Id(id); var trH = tbl.Add("Thead").Add("tr"); foreach (DataColumn column in disp.Columns) { trH.Add("th").Attr("scope", "col").Text(column.ColumnName); } var tbody = tbl.Add("tbody"); for (var i = 0; i < disp.Rows.Count; i++) { var tr = tbody.Add("tr"); for (var j = 0; j < disp.Columns.Count; j++) { tr.Add("td").Text(disp.Rows[i][j].ToString()); } } var buf = new ValidationResult(); buf.Span = span; buf.Title = "3D Grid Validation"; return(buf); }
private HtmlReportTag OpenTag(HtmlTag tag) { AddLine("<" + tag + ">"); _tabCount++; return(new HtmlReportTag(tag, CloseTag)); }
public void add_a_child_tag() { var tag = new HtmlTag("div").Append(new HtmlTag("span").Text("something")); tag.ToString().ShouldEqual("<div><span>something</span></div>"); }