Dropdownlist数据源并从C#添加额外的项目
发布时间:2020-12-15 20:52:37 所属栏目:百科 来源:网络整理
导读:我有一个与aspx页面中的DataSource相关联的DropDownList.我需要在页面加载时再添加一个项目. 我的代码: asp:LabelDropDownList ID="ddlVisualTemplate" runat="server" LabelText="Visual Template:" DataSourceID="VisualTemplateDataSource" DataTextFiel
我有一个与aspx页面中的DataSource相关联的DropDownList.我需要在页面加载时再添加一个项目.
我的代码: <asp:LabelDropDownList ID="ddlVisualTemplate" runat="server" LabelText="Visual Template:" DataSourceID="VisualTemplateDataSource" DataTextField="Name" DataValueField="Id" AutoPostBack="true" OnSelectedIndexChanged="ddlVisualTemplate_SelectedIndexChanged"/> <asp:EntityDataSource ID="VisualTemplateDataSource" runat="server" ConnectionString="name=Entities" DefaultContainerName="Entities" EnableFlattening="False" EntitySetName="tbEmailVisualTemplates"> 而我正在尝试额外的项目: protected void Page_Load(object sender,EventArgs e) { if (!IsPostBack) { ddlVisualTemplate.Items.Add(new ListItem("None",string.Empty)); } } 如果我调试代码,它会通过它.但是当显示页面时,下拉列表不包含“无”. 解决方法
这很可能是因为您在DataBind()之前添加了项目.如果要添加项目
ddlVisualTemplate.Items.Add() 然后你必须在下拉列表被绑定后这样做. 如果您查看http://msdn.microsoft.com/en-us/library/ms178472.aspx,那么DataBind将在PreRenderComplete中完成.因此,您必须在PreRenderComplete之后发生的某些事件中添加元素.或者您可以在ddlVisualTemplate.DataBound事件上执行此操作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |