【发布时间】:2012-02-18 05:06:30
【问题描述】:
在我的一个观点中,我正在为 MVC 3 使用 Teleriks 开源网格。我在网格中有 3 列:
-名称 -电子邮件 -角色
我遇到的问题是:我希望我的角色列作为下拉列表,在页面加载时已经可以编辑(所以我不想要任何编辑/更新按钮或东西),所以当管理员更改下拉列表角色中的选定项目时用户将被更新。
知道怎么做吗?
查看
@model IEnumerable<UserViewModel>
@(Html.Telerik().Grid(Model)
.Name("Grid").TableHtmlAttributes(new { width="800"})
.Columns(columns =>
{
//if (userIsInWhateverRole){
// columns.Template(o => Html.Action(GenerateYourLinkStuffHere));
//}
columns.Bound(o => o.Name).Width(150);
columns.Bound(o => o.Email).Width(120);
columns.Bound(o => o.Roles).Width(120);
})
.Sortable()
.Scrollable()
.Groupable()
.Filterable()
.Pageable(paging =>
paging.PageSize(5)
)
)
视图模型
public class UserViewModel
{
public int Id { get; set; }
[Microsoft.Build.Framework.Required]
[Display(Name = "User name")]
public string Name { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
public string[] Roles { get; set; }
public string Email { get; set; }
public bool Admin { get; set; }
}
控制
public ActionResult ManageRoles()
{
var users = Membership.GetAllUsers().Cast<MembershipUser>().Select(x=> new UserViewModel{ Name = x.UserName, Email = x.Email, Roles = Roles.GetAllRoles()});
return View(users);
}
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 model-view-controller telerik telerik-grid