// <a ...> // <i class="iconCssClass"></i> // <span class="spanHeaderCssClass">linkText</span> // <span class="spanControlCssClass"> // <i class="iconControlCssClass"></i> // </span> // </a> public static MvcHtmlString ActionLinkTree(this AjaxHelper ajaxHelper, string linkText, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions, string iconCssClass, string iconControlCssClass, string spanHeaderCssClass = null, string spanControlCssClass = null) { CheckNotNull(linkText, actionName, controllerName, iconCssClass, iconControlCssClass); var tagsString = TagBuilderHelper.Tree(linkText, iconCssClass, iconControlCssClass, spanHeaderCssClass, spanControlCssClass); var actionLink = ajaxHelper.ActionLink(linkText: @"[replacetext]", actionName: actionName, controllerName: controllerName, routeValues: routeValues, ajaxOptions: ajaxOptions).ToHtmlString(); return(new MvcHtmlString(actionLink.Replace(@"[replacetext]", tagsString))); }