我有2個listBox控件 一個控件綁定數據庫的值 一個是接受到另外一個頁面傳來的值 
我把綁定數據庫的這個控件的數據添加到另外一個listBox裡面 一點其它按鈕的時候 添加到listbox的值會自動回到原來的listbox裡面去了 。。這是為什麼、。。

解决方案 »

  1.   

    一點其它按鈕的時候 添加到listbox的值會自動回到原來的listbox裡面去了估计你一点按钮后,又重新向2个listbox控件绑定了一下(一個控件綁定數據庫的值 一個是接受到另外一個頁面傳來的值)。问一下,你绑定listbox控件是在page_load下面实现的吧??在page_load下用Ispostback属性了吗??如果是在page_load绑定,并没有用Ispostback属性,建议在page_load里用Ispostback属性判断一下,如下
    page_load()
    {
    if(!IsPostBack)
    {给listbox加载数据}
    }
      

  2.   

    楼上的说法不对。我做的测试,在button的Click后台事件中,给listbox添加Item,或者删除Item的值,listbox的状态时能过保存的,也就是说点其他按钮,postback以后,并不要重新在page_load中绑定。但是如果是通过前台的javascript来改变listbox的状态,如添加item,删除item等,提交到后台后,是获得不了listbox的这些变化的。listbox的状态保存机制就是这样的,只能通过后台来增加或者删除Item,才能保存listbox的这些状态。所以解决办法可以用隐藏域记录状态变化的办法<input type="hidden" id="hdnListBox" runat=server>,
    当点击添加按钮,前台javascript把listbox要增加的值,放进隐藏域中,后台根据隐藏域的值去添加listbox的Item,这时添加的Item才能保存。
      

  3.   

    刚才没看清楚,如果你点按鈕给第二个listbox添加值,是在后台操作的(非javascript),那就很有可能是下面的情况了。
    ---------------------------------------------------------------
    一點其它按鈕的時候 添加到listbox的值會自動回到原來的listbox裡面去了估计你一点按钮后,又重新向2个listbox控件绑定了一下(一個控件綁定數據庫的值 一個是接受到另外一個頁面傳來的值)。问一下,你绑定listbox控件是在page_load下面实现的吧??在page_load下用Ispostback属性了吗??如果是在page_load绑定,并没有用Ispostback属性,建议在page_load里用Ispostback属性判断一下,如下
    page_load()
    {
    if(!IsPostBack)
    {给listbox加载数据}
    }
      

  4.   

    if(!IsPostBack)
    {
    .........
    }
      

  5.   

    在aspx页面的前台也代码中的第一行
    <%Page……%>标签中设置smartNavigation为true
      

  6.   

    erwanfan(teddyxiong)
    說得有道理 我的在isPostBack裡面也不行只能通過隱藏框來實現 。
    我現在的問題是每次刷新的時候 另外一個頁面傳過來的值 讀會增加一次..原來那個傳過來的值不會
    自動回到原來的地方去..
      

  7.   

    另外一個頁面傳過來的值 讀會增加一次?
    你2个初始化ListBox的绑定放在if(!IsPostBack){.........}块类了么?每次刷新不用重新绑定阿,那样就不用多次读另一页面传来的值。