如何在webgrid列中添加条件(if else)?
@grid.GetHtml(tableStyle: "table table-bordered", columns: grid.Columns( grid.Column("RealName", "Name"), grid.Column("UserName", "Email") ))
我必须根据条件显示电子邮件列,如何做到这一点?
你可以试试这个
@{ var gridColumns = new List<WebGridColumn>(); gridColumns.Add(grid.Column(format: (item) => Html.ActionLink("Select", "Details"))); if (true) { gridColumns.Add(grid.Column(format: (item) => Html.ActionLink("Edit", "Edit"))); } gridColumns.Add(grid.Column("UserName", "name")); gridColumns.Add(grid.Column("RealName", "RealName")); } @grid.GetHtml(columns: grid.Columns(gridColumns.ToArray()));
这对我有用.
@grid.GetHtml(tableStyle: "webGrid", headerStyle: "header", alternatingRowStyle: "alt", selectedRowStyle: "select", columns: grid.Columns( grid.Column("Is Active",format: (item) => { if (item.IsActive == true) { return Html.Raw(string.Format("<text><img src=\"{0}\" alt=\"Image\"/></text>", Url.Content("~/images/rightmark.png"))); } else { return Html.Raw(string.Format("<text><img src=\"{0}\" alt=\"Image\"/></text>", Url.Content("~/Content/images/non-preview-photo.gif"))); } }, style: "firstColumn",canSort:true), grid.Column("Name", " Name", style: "SecondColumn",canSort:true), grid.Column("Role", "Role", style: "ThirdColumn",canSort:true) ))