c# – 将DropDownList绑定到ListItemCollection,并将值添加到DDL
发布时间:2020-12-15 18:34:38 所属栏目:百科 来源:网络整理
导读:我在商务舱中有这个代码. internal ListItemCollection GetAllAgents() { DataTable table = dao.GetAllAgents(); ListItemCollection list = new ListItemCollection(); foreach (DataRow row in table.Rows) { list.Add(new ListItem(row["agent_name"].To
我在商务舱中有这个代码.
internal ListItemCollection GetAllAgents() { DataTable table = dao.GetAllAgents(); ListItemCollection list = new ListItemCollection(); foreach (DataRow row in table.Rows) { list.Add(new ListItem(row["agent_name"].ToString(),row["id"].ToString())); } return list; } 我毫无问题地从桌子上取回了桌子.我看文本和值属性是否正确填充(1对于一些非常棒的文字?)并返回到演示文稿中我像这样绑定 Helper helper = new Helper(); ListItemCollection agentList = helper.GetAllAgents(); agentList.Insert(0,""); this.ddlAgent.DataSource = agentList; this.ddlAgent.DataBind(); 当我得到所选的值 this.ddlAgent.SelectedValue 我希望看到代理ID,但我得到的是文本(代理名称),所以我尝试了这个 this.ddlAgent.SelectedItem.Value 但我得到了同样的结果.然后我看一下生成的html源代码,看起来像这样 <select name="ctl00$ContentPlaceHolder1$ddlAgent" onchange="javascript:setTimeout('__doPostBack('ctl00$ContentPlaceHolder1$ddlAgent','')',0)" id="ctl00_ContentPlaceHolder1_ddlAgent"> <option selected="selected" value=""></option> <option value="agent1_name">agent1_name</option> <option value="agent2_name">agent2_name</option> 所有代理商都在继续这种模式.我希望我只是做一些骨头的事情,你可以在解决我的问题时嗤之以鼻:) 多谢你们. 编辑:如果我这样做 ListItemCollection agentList = helper.GetAllAgents(); agentList.Insert(0,""); foreach (ListItem agent in agentList) { this.ddlAgent.Items.Add(agent); } 它工作正常. 解决方法
尝试做:
this.ddlAgent.DataTextField = "Text"; this.ddlAgent.DataValueField = "Value"; this.ddlAgent.DataSource = agentList; this.ddlAgent.DataBind(); 也应该工作,它可能比没有理由循环列表更好. 更新发现另一种(更短)的方式: this.ddlAgent.Items.AddRange(agentList.ToArray()); this.ddlAgent.DataBind(); 通过使用Items.AddRange()而不是使用DataSource设置源,ASP能够确定它应该使用Text和Value属性. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c# – 如何在WPF应用程序中使用App.config进行log4net配置
- ajax – 如何在django中的preflighted CORS POST请求中处理
- flash + php头像上传预览裁剪组件1.8
- 第8章《工厂方法模式》
- DM8168 nandflash启动出现卡死(解决)
- c – OpenGL Multitexturing – glActiveTexture为NULL
- React TypeScript应用程序获取’TS2304:找不到名称’文本’
- 利用Linq to xml查询html
- flex3:drag-drop全攻略
- [Unity3D]使用link.xml来控制strippinglevel减少dll库大小技
推荐文章
站长推荐
热点阅读