中继器中的动态下拉列表,ASP.NET
基本上,我的代码来自这里: 然而,问题是,我需要一个带有文本框的下拉列表。dropdownlist的目的是允许用户选择他们的原产国。他们可以选择添加或删除以前输入的详细信息 这是我的错误消息: “ddlName”的SelectedValue为 无效,因为它不存在于中 项目列表。参数名称: 价值观 这是我在Default.aspx中继器中的下拉列表代码中继器中的动态下拉列表,ASP.NET,asp.net,dynamic,drop-down-menu,repeater,selectedvalue,Asp.net,Dynamic,Drop Down Menu,Repeater,Selectedvalue,基本上,我的代码来自这里: 然而,问题是,我需要一个带有文本框的下拉列表。dropdownlist的目的是允许用户选择他们的原产国。他们可以选择添加或删除以前输入的详细信息 这是我的错误消息: “ddlName”的SelectedValue为 无效,因为它不存在于中 项目列表。参数名称: 价值观 这是我在Default.aspx中继器中的下拉列表代码 <asp:DropDownList ID="ddlName" runat="server" SelectedValue='<%# Da
<asp:DropDownList ID="ddlName" runat="server" SelectedValue='<%# DataBinder.Eval(Container.DataItem, "ddl") %>'></asp:DropDownList>
后面的代码与我提供的链接完全相同
- 注意事项:不涉及任何数据库。
此外,由于dropdownlist问题,我甚至无法启动我的应用程序。问题是,在设置所选值之前,您需要填写
dropdownlist
可能的选项,您正试图使用Eval
内联设置所选值。我会将其切换为使用DropDownList
的OnDataBinding
,并在那里执行您需要的操作
例如:
<asp:DropDownList ID="ddlName" runat="server" OnDataBinding="ddlName_DataBinding" />
protected void ddlName_DataBinding(object sender, System.EventArgs e)
{
DropDownList ddl = (DropDownList)(sender);
// Fill your ddl here (eg. ddl.Items.Add("abc", xyz");
// Make sure the value you are going to set the selected item to has been added
// Now set the selected value since it will now exist.
ddl.SelectedValue = Eval("ddl").ToString();
}
受保护的无效ddlName_数据绑定(对象发送方,System.EventArgs e)
{
DropDownList ddl=(DropDownList)(发送方);
//在此处填写ddl(例如ddl.Items.Add(“abc”,xyz”);
//确保要将所选项目设置为的值已添加
//现在设置所选值,因为它现在将存在。
ddl.SelectedValue=Eval(“ddl”).ToString();
}
很有效!非常感谢你,尽管这个问题已经解决了,但我还有另一个问题哈哈,谢谢:)嗨,我怎样才能将这篇文章与复选框列表一起使用呢?我这样做:
但是我出错了。你能帮我吗?