Asp.NET DropDownList在PostBack之后重置SelectedIndex
发布时间:2020-12-16 04:19:46 所属栏目:asp.Net 来源:网络整理
导读:在网上做了很多研究后,我仍然对这个问题感到难过.我有一个页面,将名称和类别的数量加载到下拉列表中.我只会这样做!(Page.IsPostBack).当AutoPostBack触发SelectedIndex = 0.我尝试了几种不同的东西.这是我的代码: 页 form id="AddAssignmentForm" runat="s
在网上做了很多研究后,我仍然对这个问题感到难过.我有一个页面,将名称和类别的数量加载到下拉列表中.我只会这样做!(Page.IsPostBack).当AutoPostBack触发SelectedIndex = 0.我尝试了几种不同的东西.这是我的代码:
页 <form id="AddAssignmentForm" runat="server"> <asp:ScriptManager ID="ScriptManager1" EnablePartialRendering="true" runat="server" /> <asp:UpdatePanel ID="CommentUpdate" runat="server"> <ContentTemplate> Add Comment <asp:DropDownList ID="ddlCategory" runat="server" Width="206" OnSelectedIndexChanged="ddlCategory_SelectedIndexChanged" AutoPostBack="true" /> <asp:TextBox ID="txtName" runat="server" Width="200" /> <asp:TextBox ID="txtAbbrv" runat="server" Width="200" /> <asp:TextBox ID="txtDescription" runat="server" Width="200" Height="90" TextMode="MultiLine" /> </ContentTemplate> </asp:UpdatePanel> </form> 这是后端代码. private void Page_Load(object sender,System.EventArgs e) { if (!Page.IsPostBack) { GetCategories(); } } public void GetCategories() { String strSql = @"SELECT Name,Total FROM MyTable"; if (con.State == ConnectionState.Closed) con.Open(); OleDbCommand cmdsql = new OleDbCommand(strSql,con); OleDbDataReader cmdReader = cmdsql.ExecuteReader(); if (cmdReader.HasRows) { while (cmdReader.Read()) { ddlCategory.Items.Add(new ListItem(cmdReader["Category_Name"].ToString(),cmdReader["Total"].ToString())); } ddlCategory.SelectedIndex = -1; } cmdReader.Close(); con.Close(); } public void FillForm(int index) { ListItem item = ddlCategory.Items[index]; txtName.Text = item.Text + " " + (Convert.ToInt32(item.Value) + 1).ToString(); txtAbbrv.Text = item.Text.Substring(0,1) + (Convert.ToInt32(item.Value) + 1).ToString(); } public void ddlCategory_SelectedIndexChanged(Object sender,EventArgs e) { //When I break here SelectedIndex always = 1. FillForm(ddlCategory.SelectedIndex); } 我只是希望能够根据所选索引填充表单,但我似乎无法得到正确的答案.任何帮助表示赞赏. 解决方法
为下拉列表添加AppendDataBoundItems =“true”
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 一个IIS WebSite可以托管不同ASP.NET版本的多个Web应用程序
- asp.net – MVC3客户端验证不稳定/不一致
- ASP.NET Core项目目录结构介绍
- 如何在页面视图或按钮单击之间增加ASP.NET(C#)中的变量
- asp.net-mvc – 错误NU1002项目WebApplication1中的依赖项E
- asp.net – 在VS 2012中使用Web Deploy指定不同的appSettin
- asp.net-mvc – IIS6中的ASP.NET MVC压缩选项
- asp.net – 将HyperLinkField设置为Javascript Url
- asp.net-mvc-4 – VS2012 RTM缺少.net 4.5和mvc项目模板
- asp.net-mvc-3 – ASP.NET MVC 3 WebGrid – 条件列格式
推荐文章
站长推荐
- asp.net html控件的File控件实现多文件上传实例分
- asp.net-mvc-3 – 检查ViewBag是否具有属性,以有
- asp.net – NodaTime转换(第2部分).如何?
- 一句代码实现批量数据绑定[上篇]
- asp.net-mvc – ASP.net MVC数据注释DateTime默认
- ASP.NET MVC与Webforms:替换WebForms控件
- 在ASP.Net MVC v1下,是否调用了Page_Load?
- asp.net-mvc – VS2012启用NuGet包恢复消失,缺少
- ASP.net安全cookie的安全性如何
- asp.net-mvc – Knockout JS发送到MVC 3
热点阅读