public override void ExecuteResult(ControllerContext context) { if (context == null) throw new ArgumentNullException("context"); if (string.IsNullOrEmpty(ViewName)) this.ViewName = context.RouteData.GetRequiredString("action"); ViewEngineResult result = null; if (View == null) View = FindView(context).View; using (StringWriter output = new StringWriter()) { ViewData["_isGriddlySettingsRequest"] = true; ViewContext viewContext = new ViewContext(context, View, ViewData, TempData, output); View.Render(viewContext, output); Settings = ViewData["settings"] as GriddlySettings; } if (result != null) result.ViewEngine.ReleaseView(context, View); }
public override HtmlString RenderCell(object row, GriddlySettings settings, bool encode = true) { TagBuilder input = new TagBuilder("input"); input.Attributes["name"] = "_rowselect"; input.Attributes["type"] = "checkbox"; if (settings.RowIds.Any()) { bool valueSet = false; string key = ""; foreach (var x in settings.RowIds) { string val = ""; object result = x.Value(row); if (result != null) val = result.ToString(); input.Attributes["data-" + x.Key] = val; key += "_" + val; if (!valueSet) { input.Attributes["value"] = val; valueSet = true; } } input.Attributes["data-rowkey"] = key; } var inputAttributes = GenerateInputHtmlAttributes(row); if (inputAttributes != null) { input.MergeAttributes(inputAttributes); } return new HtmlString(input.ToString(TagRenderMode.SelfClosing)); }
public abstract HtmlString RenderCell(object row, GriddlySettings settings, bool encode = true);