GridView在编辑时无法获取DropDownList选择的值。
GridView中EditTemplate中放了DropDownList控件,在触发RowEdit事件的时候调用绑定方法,用FindControl然后转换为DropDow...
GridView中EditTemplate中放了DropDownList控件,在触发RowEdit事件的时候调用绑定方法,用FindControl然后转换为DropDownList的然后获取SelectedValue的方法无法获取到选择的值,从页面上看绑定是成功的,数据都显示出来了,用这放在在另一个页面上是成功的,第二次就不行了,这两个页面需求是相同的,郁闷,不知道哪里引起的。
展开
5个回答
展开全部
加载的时候请使用一下代码:
if(!ispostback)
{
DataTable dt= 从数据库取值。
foreach(DataRow r in dt.Rows)
{
this.dropdownlist.items.add(r["数据列"].tostring());
}
}
切忌不要在绑定之前,执行this.dropdownlist.items.clear();
if(!ispostback)
{
DataTable dt= 从数据库取值。
foreach(DataRow r in dt.Rows)
{
this.dropdownlist.items.add(r["数据列"].tostring());
}
}
切忌不要在绑定之前,执行this.dropdownlist.items.clear();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
查看下数据绑定的方法 是否正确!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在GridView1_RowEditing事件中
DropDownList dropShowType = (DropDownList)GridView1.Rows[Convert.ToInt32(e.NewEditIndex)].Cells[7].FindControl("dropShowType");
然后dropShowType.SelectedValue//获取选中值
Cells[7]//是这个DropDownList 在GridView1的第几列。
DropDownList dropShowType = (DropDownList)GridView1.Rows[Convert.ToInt32(e.NewEditIndex)].Cells[7].FindControl("dropShowType");
然后dropShowType.SelectedValue//获取选中值
Cells[7]//是这个DropDownList 在GridView1的第几列。
追问
获取不到,调试时看到的值是空的
追答
Cells[7]看和你的空间列数一样不?7是对应的空间位置
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不是不在提交前就又绑定了数据了,检查一下代码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一次可以,第二次不行,那就是ispostpack的问题了
追问
一次都获取不到
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询