private void WriteItem(TabStripItem item, IHtmlNode parentTag, TabStripHtmlBuilder builder) { if (ItemAction != null) { ItemAction(item); } var accessible = true; if (this.SecurityTrimming.Enabled) { accessible = item.IsAccessible(Authorization, ViewContext); } if (item.Visible && accessible) { IHtmlNode itemTag = builder.ItemTag(item).AppendTo(parentTag.Children[0]); builder.ItemInnerTag(item).AppendTo(itemTag); if (item.Template.HasValue() || item.ContentUrl.HasValue()) { builder.ItemContentTag(item).AppendTo(parentTag); } } }
protected override void WriteHtml(HtmlTextWriter writer) { if (Items.Any()) { TabStripHtmlBuilder builder = new TabStripHtmlBuilder(this); int itemIndex = 0; bool isPathHighlighted = false; IHtmlNode tabStripTag = builder.TabStripTag(); //this loop is required because of SelectedIndex feature. if (HighlightPath) { Items.Each(HighlightSelectedItem); } Items.Each(item => { if (!isPathHighlighted) { if (itemIndex == this.SelectedIndex) { item.Selected = true; } itemIndex++; } WriteItem(item, tabStripTag, builder); }); tabStripTag.WriteTo(writer); } base.WriteHtml(writer); }