0

第 1 页:(将列表框项发送到列表中并将列表保存为会话变量)

List<string> list = new List<string>();
foreach(ListItem item in ListBox1.Items)
{
    list.Add(item.ToString());
}
Session["temp"] = list;

第2页:(将会话变量复制到列表中并将列表分配给此页面中的列表框)

List<string> list = new List<string>();
list = (List<string>)Session["JobRole"];
foreach (ListItem item in list)
{
    ListBox2.Items.Add(item.ToString());
}

这样做时,这是我得到的错误:无法将类型“字符串”转换为“System.Web.UI.WebControls.ListItem”

有人可以帮我吗?

谢谢

4

2 回答 2

2

你不是说

    foreach (string item in list)
    {
        ListBox2.Items.Add(item);
    }

... liststring毕竟是 s 的列表。

于 2012-04-18T19:38:46.520 回答
0

那是因为您已将列表定义为列表。如果您只是想将字符串值添加到列表框中,您可以执行以下操作:

List<string> list = new List<string>();
        list = (List<string>)Session["JobRole"];
        foreach (string item in list)
        {
            ListBox2.Items.Add(item);
        }

您还应该检查 Session["JobRole"] 不为空。

于 2012-04-18T19:40:44.547 回答