私はVS 2010、.net 4、vb.netを使用しています。私はasp.netサイトを持っていて、ページには2つのドロップダウンリストがあります。私はこれらのいずれかをクリックすることができるページが最初にロードが、正常にアイテムやイベント火災を選択asp.netドロップダウンして間違ったイベントが発生する
<asp:DropDownList ID="ddlClassIndex" runat="server" AutoPostBack="true" />
<asp:DropDownList ID="ddlClassQBankList" runat="server" AutoPostBack="true" />
。私が2番目の操作としてドロップダウンボックスのいずれかを選択すると、最初のドロップダウン、ddlClassIndex.SelectedIndexChanged
が発生します。これが起こっていると私は間違って何をしています。ページが読み込まれたときに私はpage.ispostback=false
のチェックを行い、マスターページも使用しています。
てください..私はページのポストバックをチェックしています
Private Sub LoadClass()
Dim Os As List(Of Dempsey.OldeTestClassIndex) = Nothing
Dim Oc As New Dempsey.OldeTestClassIndex_Controller
Os = Oc._GetClassIndexData(0)
Dim X = From w In Os
Where w.Active = 3
Select w
Os = X.ToList
With Me.ddlClassIndex
.DataSource = Os.OrderBy(Function(o) o.ClassTitle)
.DataTextField = "ClassTitle"
.DataValueField = "tblClassIndexID"
.DataBind()
.Items.Insert(0, New ListItem("Choose Class Title", "0"))
.SelectedIndex = 0
End With
End Sub
Protected Sub ddlClassIndex_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlClassIndex.SelectedIndexChanged
If Me.ddlClassIndex.SelectedIndex > 0 Then
If ClassHasCategories(Me.ddlClassIndex) = True Then
Response.Redirect("AddEditQBank.aspx?ClassIndexID=" & Me.ddlClassIndex.SelectedItem.Value)
Else
Me.lblStatus.Text = "No Categories"
Me.lblStatus.Visible = True
End If
End If
End Sub
Private Sub LoadClassQBankList()
Dim ary As New ArrayList
ary.Add(1)
ary.Add(2)
ary.Add(3)
Dim Os As List(Of Dempsey.OldeTestClassIndex) = Nothing
Dim Oc As New Dempsey.OldeTestClassIndex_Controller
Os = Oc._GetClassIndexData(0)
Dim X = From w In Os Join l In ary On w.Active Equals l
Where w.KT = 1 And w.RandomTest = 1
Select w
Os = X.ToList
With Me.ddlClassQBankList
.DataSource = Os.OrderBy(Function(o) o.ClassTitle)
.DataTextField = "ClassTitle"
.DataValueField = "tblClassIndexID"
.DataBind()
.Items.Insert(0, New ListItem("Choose Class Title", "0"))
.SelectedIndex = 0
End With
End Sub
Protected Sub ddlClassQBankList_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlClassQBankList.SelectedIndexChanged
If Me.ddlClassQBankList.SelectedIndex > 0 Then
Response.Redirect("ClassQBankList.aspx" & "?ClassIndexID=" & Me.ddlClassQBankList.SelectedValue)
End If
End Sub
~~~~~~~~~~ 詳細情報 。ドロップダウンから選択すると、別のページにリダイレクトされます。戻るボタンをクリックして、もう一方のドロップダウンで別の値を選択すると、SelectedIndexChanged fireが発生します。だから、私はviewstateで何かする必要がありますか?私は他のページにrediredする前に?
イベントをワイヤードアップするコードをドロップダウンに含めることはできますか。 – Phill
何を意味するのですか*私はページを実行します.ispostback =ページがロードされたときにfalseをチェックしますか? 'Page.IsPostBack'では何をしていますか? 'not Page.IsPostBack'のときだけ、データソースをバインドする必要があります。ドロップダウンはカスケード接続されていますか?つまり、選択されているときに、他のドロップダウンのselectedindexに影響しますか?両方のSelectedIndexChangedEventで何をしていますか?これは答えよりも多くの質問ですが、正しい軌道に乗るのに役立ちます。 –
おそらく、彼はおそらくイベントを配線するために 'Handles'を使ってVB.Netを使用していて、おそらくメソッドを貼り付けコピーしてメソッドの名前を変更し、コントロールの変更を忘れてしまったのです。 – Phill