问题:如何在asp.net。
中将参数传递给gridView的SelectMethod描述:
我正在使用asp .net 4.5并使用(强类型模型绑定)SelectMethod将数据绑定到gridView。
SelecteMethod =“BindGrid” BindGrid是用户定义的函数。
但绑定时我想将GridRow作为参数传递给函数BindGrid。
那么有没有办法将参数传递给selectMethod进行强类型模型绑定?
答案 0 :(得分:0)
great example如何使用控制来过滤"过滤"从" SelectMethod"返回的数据。例如,如果要更改下拉列表中选定内容的数据。您可以像这样设置标记......
<form id="form1" runat="server">
<div>
<asp:DropDownList ID="ddlEmployee" AutoPostBack="true" runat="server">
<asp:ListItem Text="1"></asp:ListItem>
<asp:ListItem Text="2"></asp:ListItem>
</asp:DropDownList>
</div>
<div>
<asp:GridView ID="grdEmployee" runat="server" SelectMethod="GetEmployees" ItemType="WebApplication2.Employee">
</asp:GridView>
</div>
</form>
然后该方法看起来像是接收参数......
public List<Employee> GetEmployees([Control]int? ddlEmployee)
{
List<Employee> employeeList = new List<Employee>();
for (int i = 1; i <= 5; i++)
{
employeeList.Add(new Employee {
EmployeeId=i,
FirstName=string.Format("First{0}",i),
LastName=string.Format("Last{0}",i)
});
}
return employeeList.Where(e=>e.EmployeeId==ddlEmployee).ToList();
}
根据您的具体情况,这种情况有所不同。希望这有帮助!
答案 1 :(得分:0)
答案 2 :(得分:0)
MSDN > 任务 3 - 模型绑定中的值提供程序 > (5):https://docs.microsoft.com/en-us/aspnet/web-forms/overview/getting-started/hands-on-labs/whats-new-in-web-forms-in-aspnet-45#task-3---value-providers-in-model-binding
public IQueryable<Category> GetCategories([Control("controlId")] int? minProductsCount)
{
var query = this.db.Categories.Include(c => c.Products);
if (minProductsCount.HasValue)
{
query = query.Where(c => c.Products.Count >= minProductsCount);
}
return query;
}