public static TableAction ToLinkAction(string name, string url, ActionLinkType linkType, TableActionType tableActionType, Flaticon flaticon = Flaticon.Interface5) { var tableAction = new TableAction { Name = name, Url = url, IconType = flaticon, Type = linkType, ActionType = tableActionType }; return(tableAction); }
public static MvcHtmlString CustomActionLink(this HtmlHelper helper, string linkCaption, string action, string controller, object routValues = null, string linkClass = "btn btn-secondary", string iconClass = "", ActionLinkType actionLinkType = ActionLinkType.None) { MvcHtmlString actionTag = helper.ActionLink(linkCaption, action, controller, routValues, htmlAttributes: new { @class = linkClass }); TagBuilder aTag = new TagBuilder("a"); aTag.AddCssClass(linkClass); UrlHelper url = new UrlHelper(HttpContext.Current.Request.RequestContext); string href = url.Action(action, controller, routValues); aTag.MergeAttribute("href", href); TagBuilder iTag = new TagBuilder("i"); switch (actionLinkType) { case ActionLinkType.None: iTag.AddCssClass(iconClass); break; case ActionLinkType.Create: iTag.AddCssClass("glyphicon glyphicon-plus"); break; case ActionLinkType.Edit: iTag.AddCssClass("glyphicon glyphicon-edit"); break; case ActionLinkType.Delete: iTag.AddCssClass("glyphicon glyphicon-trash"); break; case ActionLinkType.Details: iTag.AddCssClass("glyphicon glyphicon-list"); break; default: iTag.AddCssClass(iconClass); break; } aTag.InnerHtml = $"{iTag.ToString()} {linkCaption}"; return(MvcHtmlString.Create(aTag.ToString())); //return MvcHtmlString.Create(actionTag.ToString().Insert(actionTag.ToString().IndexOf(linkCaption), iTag.ToString())); }
public TableAction(string name, string url, ActionLinkType type) { Name = name; Url = url; Type = type; }
public ActionLink(ILinkableAction target, ActionLinkType linkType) { Target = target; Type = linkType; }