2017-06-14 55 views
1

因此,在我的網站上,我有一個更新日誌系統,通過數據庫查詢他或她分配了哪些軟件以及最新的更改日誌文章(很像博客),但只適用於他們指定的軟件。無法從下拉列表中調用正確的值ASP.net

我已經創建了一個網頁來爲用戶分配軟件(包括角色等),但是我無法正確調用在頁面加載期間分配的DataValueField。

綁定表看起來有點像這個(逗號在這裏分隔列表)

BindingId,SoftID的,用戶ID

用戶的表與沿默認ASP.net標識表用戶角色等

軟件表,但是,被分配的行的總數的一個唯一的ID加1。

Ť他的代碼,我有如下

Dim tbladap As New UserDataSetTableAdapters.SoftwareTableAdapter 
    SoftDrop.DataSource = tbladap.GetAllData() 
    SoftDrop.DataTextField = "SoftName" 
    SoftDrop.DataValueField = "SoftId" 
    SoftDrop.DataBind() 

的問題是,SoftDrop總是具有1的的SelectedValue僅供參考插入查詢低於

(用於下拉列表控制沒有什麼特別有Standerd ASP.net代碼)
tbladap.Insert(tbladap.GetData().Rows.Count + 1, SoftDrop.SelectedValue, UserDrop.SelectedValue) 

任何幫助表示感謝,謝謝!

+0

在該事件或方法你叫插入指令? –

+0

@DavidBS在按鈕點擊事件的ASP更新面板中調用它。它保存到數據庫中,因爲網站在div中創建了成功警報,我也可以確認SQL數據庫中的數據,但選擇器始終返回1. –

+0

嘗試在用戶選擇一個選項時儘快保存選定值(SelectedIndex事件的組合)變成一個隱藏的領域,甚至是一個全局變量,因爲我懷疑可能發生的是由於頁面重新加載。 –

回答

1

固定。在提問之前的研究很差。

所有控件加載頁面加載和我不包括:

If Not Page.IsPostBack() Then 
'Load the controls 
End If 
0

嘗試使用這樣

tbladap.Insert(tbladap.GetData().Rows.Count + 1, SoftDrop.SelectedItem.Value, UserDrop.SelectedItem.Value) 

嘗試使用SelectedItem.Text

+0

剛試過這個,但仍然得到了相同的輸出。 –