2014-09-04 95 views
0

我有一個下拉列表,它是使用linq查詢在page_load上填充的。 如果我更改下拉列表中的值,然後單擊一個按鈕在記錄上運行更新查詢,原始值仍然存在,如果我在調試模式下單步執行,則可以看到所選值完全沒有變化DropdownList selectvalue似乎沒有改變

這裏是林結合的數據如何下拉列表

dlBookingRef.DataSource = d.BookingRef(); 
dlBookingRef.DataMember = "booking"; 
dlBookingRef.DataBind(); 

這裏是從形式

item.booking_ref = dlBookingRef.SelectedValue; 

任何想法,爲什麼它保留了原有的價值得到數據的功能行?

感謝

回答

1

把綁定代碼在if(!IsPostBack),它看起來像在按鈕事件爲頁面加載被調用由於您的下拉列表中被複位,所以綁定下拉列表,只有當頁面是不是調回:

protected void Page_Load(object sender, EventArgs e) 
{  
    if(!Page.IsPostBack) 
    { 
    dlBookingRef.DataSource = d.BookingRef(); 
    dlBookingRef.DataMember = "booking"; 
    dlBookingRef.DataBind(); 
    } 
}