2012-07-12 113 views
0

我有一個名爲lstKosnicka的列表框和一個名爲btnDodadi的ADD按鈕。狀態管理(會話)

protected void btnDodadi_Click(object sender, EventArgs e) 
{ 
    DodadiVoKosnicka kosnicka = new DodadiVoKosnicka(); 
    ListItem stavka = new ListItem(); 
    List<ListItem> lista = new List<ListItem>(); 
    stavka = kosnicka.novaStavka(lstPredlog.SelectedItem.Text); 

    lstKosnicka.DataSource = Session["kosnicka"] as List<ListItem>; 
    lstKosnicka.Items.Add(stavka); 
    lstKosnicka.DataBind(); 
    Session["kosnicka"] = lstKosnicka; 
    lstPredlog.SelectedIndex = -1; 

} 

還有一個WEBFORM與其他列表框命名lstKosnickaNajava,我想作爲lstKosnicka使用Session [「kosnicka」]來填補這個名單wtih相同的項目,但什麼是錯的。這裏是Najava.aspx代碼:

protected void Page_Load(object sender, EventArgs e) 
{ 



    HttpCookie kolace = Request.Cookies["korisnik"]; 
    if (kolace != null) 
    { 
     lblNajavenKorisnik.Text = "Најавен коринсик " + kolace["KorisnickoIme"]; 
    } 
    else 
    { 
     lblNajavenKorisnik.Text = "Нема најавени корисници"; 
    } 

    if (!IsPostBack) 
    { 

     lstKosnickaNajava.DataSource = Session["kosnicka"] as List<ListItem>; 

     lstKosnickaNajava.DataBind(); 

    } 
} 

但是當我從第一頁到Najava.aspx去lstKosnickaNajava是空的。

回答

0

也許你應該嘗試在btnDodadi_Click() 這個代碼

 List<string> lista; 
     if (Session["kosnicka"] == null) 
     { 
      lista = new List<string>(); 

     } 
     else 
     { 
      lista=(List<string>)Session["kosnicka"]; 

     } 

如果只添加文本列表項可以是字符串。 我忘了問,也許你在PAge_Load方法中這樣做?