• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

在三层框架下,gridview中绑定dropdownlist问题,急

weng0234 2012-06-30 03:06:04
有2个表:A表,B表。gridview绑定的是A表,而gridview编辑添加的dropdownlist绑定B表
后台怎么写,
...全文
107 点赞 收藏 8
写回复
8 条回复
xboxeer 2012年06月30日
你先断点下看看有没有到ddl绑定的代码 然后检查数据源对不对
回复 点赞
weng0234 2012年06月30日
为什么我运行后没有值显示
回复 点赞
xboxeer 2012年06月30日
恩 是的 不过最外面还要判断当前行是不是数据行而不是表头之类的 不然会出现异常
或者最好加一个if(ddle!=null)
[Quote=引用 4 楼 的回复:]
引用 3 楼 的回复:

没有关联也没事 只要你通过OnDataItemBind事件找到了GridView中行里面的DDL 绑定就很简单了
刚刚看了下MSDN 似乎应该是RowDataBound事件~没有OnDataItemBind事件 sorry~


C# code

DropDownList ddle = (DropDownList)e.Row.Cel……
[/Quote]
回复 点赞
孟子E章 2012年06月30日
就是这个意思,但重点是你要找到你编辑行的Row,最好
DropDownList ddle = (DropDownList)e.Row.FindControl("ddle");

Cell的话你数不对容易出错
回复 点赞
weng0234 2012年06月30日
[Quote=引用 3 楼 的回复:]

没有关联也没事 只要你通过OnDataItemBind事件找到了GridView中行里面的DDL 绑定就很简单了
刚刚看了下MSDN 似乎应该是RowDataBound事件~没有OnDataItemBind事件 sorry~
[/Quote]

DropDownList ddle = (DropDownList)e.Row.Cells[2].FindControl("ddle");
DataTable dt1 = new DataTable();
ddlDe.DataSource = dt1;//是下拉框中有多个值
ddlDe.DataTextField = "vc";
ddlDe.DataValueField = "ID";
ddlDe.DataBind();


是不是这样啊
回复 点赞
xboxeer 2012年06月30日
没有关联也没事 只要你通过OnDataItemBind事件找到了GridView中行里面的DDL 绑定就很简单了
刚刚看了下MSDN 似乎应该是RowDataBound事件~没有OnDataItemBind事件 sorry~
回复 点赞
weng0234 2012年06月30日
[Quote=引用 1 楼 的回复:]

DDL定义在GridView模板列中是吧?在OnDataItemBind事件里面通过FindControl(ControlName)找到DDL 然后获取A表中和B表关联的字段 再去B表中获取数据 然后绑定到找到的DDL控件上面
[/Quote]
问题2个表,没关联啊
回复 点赞
xboxeer 2012年06月30日
DDL定义在GridView模板列中是吧?在OnDataItemBind事件里面通过FindControl(ControlName)找到DDL 然后获取A表中和B表关联的字段 再去B表中获取数据 然后绑定到找到的DDL控件上面
回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告