http://community.csdn.net/Expert/topic/4232/4232931.xml?temp=.7299005
问题还没有真正解决。
我在DataGrid中添加了Item模板列,放置了两个DropDownList控件:ddlDept,ddlEmpl,分别用来绑定部门和员工,ddlDept的AutoPostBack设为true,根据网友的建议需要给ddlDept添加一个事件委托,才能触发SelectedIndexChanged事件。但具体怎么实现还是摸不着头脑,请帮忙
问题还没有真正解决。
我在DataGrid中添加了Item模板列,放置了两个DropDownList控件:ddlDept,ddlEmpl,分别用来绑定部门和员工,ddlDept的AutoPostBack设为true,根据网友的建议需要给ddlDept添加一个事件委托,才能触发SelectedIndexChanged事件。但具体怎么实现还是摸不着头脑,请帮忙
系统会自动加入如下事件的
this.ddlEmpl.SelectedIndexChanged += new System.EventHandler(this.ddlEmpl_SelectedIndexChanged);
http://www.cnblogs.com/lovecherry/archive/2005/04/04/131787.html
但还有个问题:
protected void ddlDept_SelectedIndexChanged(object sender, System.EventArgs e)
{
foreach(DataGridItem dgi in DataGrid1.Items)
{
DropDownList ddl = new DropDownList();
ddl = (DropDownList)dgi.FindControl("ddlDept");
string deptno = ddl.SelectedValue;
ddl = (DropDownList)dgi.FindControl("ddlEmpl");
BindEmp(deptno,ddl);
}
}
当触发时我只会遍历所有行并重新绑定员工,不知用什么方法只重新绑定部门改变的那一行?
另:我用xmlHttp方式实现的有点问题:部门和员工联动正常,只是在提交时我要遍历DataGrid的每一行,取员工共编号,但是能取到的只能是第一次绑定的部门中的员工,也就是说客户端所做的改动服务器无法获取,不知该怎么解决。想用这种方式,毕竟页面不用太闪
--------------------------------
自从有了asp.net正式版,就有了简单设置一下 smartNavigation=true 这种页面属性的做法。你认为你的写法比asp.net现成的方法要方便么?
放个hidden控件获得dropdownlist的值,然后获得这个值不就可以了
---------------------------
这个hidden控件放在哪儿呢?具体该怎么操作?我要获取的是若干行中的值
你不是要用这个hidden获得每一行的dropdownlist的值吗?
那每一行都放一个不可以吗?能把需求说清楚一些?