これは私を怒らせています...動的に作成された2つのASPドロップダウンボックス、メーカーとモデルがあります。ユーザーがメーカーを選択すると、makeChanged という ASP ボタンが呼び出されます。makeChanged が実行されると、モデルのドロップダウン リストのアイテムがクリアされ、新しいモデルが作成されます。したがって、makeChanged ボタンを処理するコードは次のとおりです。
Sub makeChanged (ByVal sender As Object, ByVal e As System.EventArgs)
Dim thingID = sender.ID.split("_")(1)
Dim modelDD As DropDownList = thingsContainer.FindControl("model_" & thingID )
modelDD.EnableViewState = False
modelDD.Items.Clear()
modelDD.SelectedValue = -1
modelDD.AppendDataBoundItems = True
Dim select_qry = "select * from Models where makeid=" & sender.SelectedValue
Dim objData2 As SqlDataReader = getSqlQueryObj(select_qry)
modelDD.DataSource = objData2
modelDD.DataValueField = "models"
modelDD.DataTextField = "models"
modelDD.DataBind() 'This is where the error is getting triggered from
End Sub
多くのresponse.writeを実行したため、クエリやドロップダウンの検索に問題はなく、期待される結果が返されることは事実です。viewState が変更されたインデックスの古い値を保持していて、DB から新しい値をリストに再入力した後にそれをリストに追加しようとしていることが原因である可能性があると考えましたが、これを確認するために viewState をオフにしましたそれでも違いはありません:|。
どんな助けでも大歓迎です!ありがとうございました!