无法在重定向页面中检索DropDownlist selecteditem

时间:2014-09-24 10:10:12

标签: c# asp.net

我今天早上试图修复的是ASP.NET控件下拉列表的问题:

我面临的方案是检索selecteditem并在重定向页面中显示(某种用户信息的某种摘要),然后为用户提供提交或编辑的选项。但我总是得到两个下拉列表中的第一项。

我的代码:

                mydrop.DataSource = function();
                mydrop.DataTextField = "test";
                mydrop.DataValueField = "type";
                mydrop.DataBind();
                mydrop.SelectedIndex = 0;

                string[] a = new string[] { test.SelectedItem.Text, test2.Text,};
                Session["dataForm"] = a;

                Response.Redirect("~/mypage.aspx");

在页面的page_load中,我将用户重定向到:

string[] a = (string[])Session["dataForm"];
        test.Text = a.GetValue(0).ToString();
        test2.Text = a.GetValue(1).ToString();

但我总是得到下拉列表的第一项,即使我改变了选择。

感谢您的阅读,并提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

首先,您可以设置autoPostback=true,然后将Page_Load放在 if(!IsPostback) { mydrop.DataSource = function(); mydrop.DataTextField = "test"; mydrop.DataValueField = "type"; mydrop.DataBind(); mydrop.SelectedIndex = 0; } 下进行绑定:

SelectedIndexChanged

现在将代码置于mydrop protected void mydrop_SelectedIndexChanged(object sender, EventArgs e) { string[] a = new string[] { test.SelectedItem.Text, test2.Text,}; Session["dataForm"] = a; Response.Redirect("~/mypage.aspx"); } 事件中,如下所示:

{{1}}