我已将数据分配给webgrid,但它按字母顺序对列进行排序.它没有根据表结构在asp datagrid中显示列.
例如,如果表的列为"
id title artid
Run Code Online (Sandbox Code Playgroud)
然后网格在将列排序为以下后显示它们:
artid id title
Run Code Online (Sandbox Code Playgroud) 我想创建一个WebGrid,其中包含基于集合的列,例如List.像这样的东西(显然不起作用):
@grid.GetHtml(
columns: grid.Columns(
@foreach (var column in Model.ListOfColumns) {
grid.Column(column.Name, column.Title);
}
)
)
Run Code Online (Sandbox Code Playgroud)
任何聪明的想法?
如何在绑定后选择WEBGRID的一行,以便突出显示行(通过鼠标单击任何行的任何行或单元格而不使用复选框或选项按钮作为列)
1.)选择任何一行后,我可以获得该行的数据值吗?
2.)我可以通过键盘上下移动选择(上下键盘按钮)吗?
3.)并且在更改选择行的索引(通过鼠标或通过键盘上下按钮)之后,行选择索引或者行选择索引修改事件可以被触发/处理
谢谢
我收到此错误 - System.InvalidOperationException:列"UserID"不存在.
这是我的View Model.
public class UserVM
{
public int UserID;
public string Name;
}
Run Code Online (Sandbox Code Playgroud)
这是我在控制器中的动作方法.
public ActionResult TestGrid()
{
List<UserVM> rows = new List<UserVM>();
rows.Add(new UserVM { UserID = 100, Name = "Abc" });
rows.Add(new UserVM { UserID = 101, Name = "Def" });
rows.Add(new UserVM { UserID = 102, Name = "Ghi" });
return View("TestGrid", rows.AsEnumerable());
}
Run Code Online (Sandbox Code Playgroud)
这是我的观点.
@model IEnumerable<Module.ViewModels.UserVM>
@{
var grid = new WebGrid(Model);
}
<div>
@grid.GetHtml(
columns: grid.Columns(
grid.Column("UserID", header: "User ID"),
grid.Column("Name", header: …Run Code Online (Sandbox Code Playgroud) 我在My MVC应用程序中使用WebGrid,用于分页我正在使用此代码
var links = $('a[href*=page], a[href*=sort]');
form = $('form')[0];
links.click(function () {
debugger;
form.attr("action", this.href);
$(this).attr("href", "javascript:");
form.submit();
});
@using (Html.BeginForm(Model.PostToAction, "Leads", FormMethod.Post))
Run Code Online (Sandbox Code Playgroud)
当执行form.submit()时,它被执行为GET而不是POST,
我究竟做错了什么 ?
更新:
我的表格是:
<form action="/Leads/DetailsLeads" method="post">
Run Code Online (Sandbox Code Playgroud)
控制器是:
[HttpPost]
public ActionResult DetailsLeads(LeadDetailsViewModel model)
Run Code Online (Sandbox Code Playgroud) 这是我视图的片段,它给了我错误
@model MembershipUserCollection
@{
ViewBag.Title = "Index";
}
@{var usersGrid = new WebGrid(source: Model, rowsPerPage: 40);}
Run Code Online (Sandbox Code Playgroud)
显然,WebGrid构造函数不接受MembershipUserCollection作为参数.我怎么能绕过这个?
请帮忙.我需要在用户列表中添加分页.
asp.net-mvc asp.net-membership html-helper webgrid asp.net-mvc-3
我试图在DropDownList里面放一个,WebGrid但我无法弄清楚该怎么做:(
我试过的事情:
grid.Column("Id", "Value", format: ((item) =>
Html.DropDownListFor(item.SelectedValue, item.Colors)))
Run Code Online (Sandbox Code Playgroud)
和
grid.Column(header: "", format: (item => Html.DropDownList("Colors", item.Colors)))
Run Code Online (Sandbox Code Playgroud)
和
grid.Column(header: "", format: Html.DropDownList("Colors"))
Run Code Online (Sandbox Code Playgroud)
和其他各种各样,但我无法让它工作.任何帮助深表感谢.
public class PersonViewModel
{
public string Name { get; set; }
public int Age { get; set; }
public SelectList Colors { get; set; }
public int SelectedValue { get; set; }
}
public class ColorViewModel
{
public int ColorID { get; set; }
public string ColorName { get; set; }
} …Run Code Online (Sandbox Code Playgroud) 有没有办法将样式应用于WebGrid寻呼机?
我发现这样做的唯一方法是从客户端编写Jquery代码,但它看起来有点脏.
有没有为这个GridHelper提供css的常规方法?
我WebGrid用来显示模型的数据.我希望ID列应该是超链接.因此,当任何人点击ID时,它的相应页面将被打开.我试过以下代码,但是我收到了错误: Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: Cannot convert type 'int' to 'string'
码:
grid.Column(columnName: "ID", header: "ID", canSort: true, format: item => Html.ActionLink((string)item.ID, "../CRM/DetailsRequest", new { ID = item.ID })),....
Run Code Online (Sandbox Code Playgroud) 我已创建一个的WebGrid其用于显示数据转换成表格形式,但我想通过使用该复选框我想perorm操作检查所有其它复选框成的WebGrid并执行主动和删除操作,增加在的WebGrid的报头部分的复选框. .so请帮我如何创建它..我的Webgrid代码:
<div id="mygrid">
@grid.GetHtml(tableStyle: "gridTable",
headerStyle: "gridHead",
footerStyle: "gridFooter",
rowStyle: "gridRow",
alternatingRowStyle: "gridAltRow",
columns: grid.Columns(
grid.Column(header: "",format: @<text><input type="checkbox" name="chkactive[]" value="@item.User_id" /></text>),
grid.Column("User_Id"),
grid.Column("Name"),
grid.Column("Username"),
grid.Column("Fb_Id"),
grid.Column("User_image", format: @<text><img src="@Url.Content(@item.Image_path)" height="30px" width="50px" alt="noimage"/></text>),
grid.Column("Email"),
grid.Column("Gender"),
grid.Column(header: "Status", format: @<text>
@if (@item.Is_active == true)
{
<a href="@Url.Action("UserStatus", "Admin", new { id = @item.User_id })"><img src="../../images/Active.png"/></a>
}
else
{
<a href="@Url.Action("UserStatus", "Admin", new { id = @item.User_id })"><img src="../../images/Deactive.png"/></a> }</text>),
grid.Column(header: "Edit",
format: @<text><a href="@Url.Action("EditeUser", "Admin", new { id = @item.User_id …Run Code Online (Sandbox Code Playgroud) 我已经阅读了一些如何通过AJAX实现MVC webgrid的教程,但我想了解底层发生了什么,以及哪个是ajaxUpdateContainerId的正确实现.
例A:
@{
var grid = new WebGrid(Model, rowsPerPage: 10, ajaxUpdateContainerId: "result");
@grid.GetHtml(htmlAttributes: new { id = "result" }, tableStyle: "webgrid",
grid.Columns(
grid.Column(columnName: "ID", header: "ID", canSort: true),
grid.Column(columnName: "Name", header: "Name", canSort: true)))
}
Run Code Online (Sandbox Code Playgroud)
例B
@{
var grid = new WebGrid(Model, rowsPerPage: 10, ajaxUpdateContainerId: "result");
<div id="result">
@grid.GetHtml( tableStyle: "webgrid",
grid.Columns(
grid.Column(columnName: "ID", header: "ID", canSort: true),
grid.Column(columnName: "Name", header: "Name", canSort: true)))
</div>
}
Run Code Online (Sandbox Code Playgroud)
例C:
<div id="result">
@{
var grid = new WebGrid(Model, rowsPerPage: 10, ajaxUpdateContainerId: "result"); …Run Code Online (Sandbox Code Playgroud) 我正面临这个问题,我想在一个视图中显示两个Webgrid,所以我为每个视图创建单独的视图,并使用一个视图调用
<table>
<tr>
<td>
@{Html.RenderAction("NewRegisterCustomer", "AdminDeshboard");}
@{Html.Action("NewRegisterCustomer", "AdminDeshboard");}
</td>
</tr>
<tr>
<td>
@{Html.RenderAction("OrderSummary", "AdminDeshboard");}
@{Html.Action("OrderSummary", "AdminDeshboard");}
</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
Webgrid都正常显示,但当我更改页面时,Webgrid另一个Webgrid也受到了影响
这是我的Webgrid代码
<fieldset>
@{
ViewBag.Title = "WebGrid with Custom Paging, Sorting";
WebGrid grid1 = new WebGrid(rowsPerPage: Model.PageSize);
grid1.Bind(Model.Order,
autoSortAndPage: false,
rowCount: Model.TotalRows
);
}
@grid1.GetHtml(
fillEmptyRows: false,
alternatingRowStyle: "alternate-row",
headerStyle: "grid-header",
footerStyle: "grid-footer",
mode: WebGridPagerModes.All,
firstText: "<< First",
previousText: "< Prev",
nextText: "Next >",
lastText: "Last >>",
columns: new[] {
grid1.Column("OrderId",header: " OrderId ",style:"Width=100px"),
grid1.Column("FirstName",header: " FirstName "),
grid1.Column("LastName",header: " LastName "), …Run Code Online (Sandbox Code Playgroud) webgrid ×12
asp.net-mvc ×8
asp.net ×2
c# ×1
html-helper ×1
jquery ×1
lambda ×1
ultrawebgrid ×1
web ×1