使用会话将列表框项目从一个asp.net页面传输到另一个页面。我想将列表框的项目从一个asp.net页面转移到另一个。代码以某种方式抛出错误。列表框中的项目也未被检索。我想用复选框列表做同样的事情。希望列表框问题有助于[我解决这个问题。请指教。
第一页
<asp:ListBox ID="SelectedItems" runat="server" SelectionMode="Multiple"/>
<asp:Button ID="sbmtButton" runat="server" Text="Submit" Width="152px" OnClick="sbmtButton_Click" />
第一页.cs
protected void sbmtButton_Click(object sender, EventArgs e)
{Session["wrd"] = SelectedItems;Server.Transfer("~/aftrSubmit.aspx";);}
第二页
第二页.cs
protected void Page_Load(object sender, EventArgs e)
{if (!this.IsPostBack){Prescription_list = (ListBox)Session["wrd"];}}
答案 0 :(得分:0)
第一页ASPX代码:
<asp:ListBox ID="SelectedItems" runat="server" SelectionMode="Multiple">
<asp:ListItem Text="A"></asp:ListItem>
<asp:ListItem Text="B"></asp:ListItem>
<asp:ListItem Text="C"></asp:ListItem>
</asp:ListBox>
<asp:Button ID="sbmtButton" runat="server" Text="Submit" Width="152px" OnClick="sbmtButton_Click" />
首页C#代码隐藏:
protected void sbmtButton_Click(object sender, EventArgs e)
{
ListItem[] x = new ListItem[SelectedItems.Items.Count];
SelectedItems.Items.CopyTo(x, 0);
Session["wrd"] = x;
Server.Transfer("~/aftrSubmit.aspx");
}
第二页ASPX代码:
<asp:ListBox ID="Prescription_list" runat="server" SelectionMode="Multiple"/>
第二页C#代码隐藏:
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
ListItem[] x = (ListItem[])Session["wrd"];
Prescription_list.Clear();
Prescription_list.Items.AddRange(x);
}
}