我在asp.net中有一个网格,它是从一个表(实际上是一个连接)填充的,
有column
名为 EMPLOYEENAME (显示员工姓名)和另一列名为 EMPLOYEEID (显示员工ID),
这两列是相关的,即员工'Tom'总是有员工ID说'21'
目前我正在使用下拉列表
编辑员工姓名列我需要一个代码来自动更改适合于已编辑的员工姓名的员工ID
即如果我选择员工姓名为'TOM',相应的员工将自动更改为'21'
答案 0 :(得分:1)
当您使用下拉列表更改员工姓名时。因此,您可以通过为该下拉列表设置autopostback = true并将事件设为onSelectedIndexChanged来实现此目的。
在代码页上编写代码以获取所选下拉列表的员工ID并在网格中更新
在aspx页面上:
AutoPastBack="true" OnSelectedIndexChanged="grid_selectedIndexchanged"
在页面后面的代码中:
protected void grid_selectedIndexchanged(object sender, EventArgs e)
{ / *从所选员工的数据库中获取数据的代码* /
}
答案 1 :(得分:0)
在MSDN @ Gridview sample code上查看此链接。
回顾/研究C#中的Gridview SelectedIndexChanged事件,以及XML / html文件中的GridView属性。
答案 2 :(得分:0)
您可以将EMPLOYEEID设置为ListItem的值。这样,当您选择一个项目时,您拥有所选项目的员工姓名和员工ID。
可以通过像这样的数据绑定来实现:
ddlEmpNames.DataSource = employees;
ddlEmpNames.DataTextField = "EMPLOYEENAME";
ddlEmpNames.DataValueField = "EMPLOYEEID";
ddlEmpNames.DataBind();
这可能会为您节省另一个数据库调用,只是为了从名称中找到员工ID。