我正在使用VB .net开发一个ASP.Net网站
在页面中,用户可以从列表框中选择一个项目。然后,根据选择,他将被重定向到另一个页面。很好。
但是,当用户从该页面浏览回来时(使用浏览器的后退按钮),列表框项仍处于选中状态!我在页面上有多个列表框。他们都没有忘记所选的内容。
每次调用任何ListBox.SelectedIndexChanged事件时,都会调用此代码。
Public Sub ItemClicked(sender As ListBox)
If sender.SelectedIndex >= 0 Then
Dim NoteIndex = sender.SelectedValue
//'Don't care about this line. It works
Usr.RequestedData = New UserRequestedData("View Note", "", NewNote.RDF & NoteIndex)
//'These lines do not have an effect. That's my problem
sender.SelectedIndex = -1
sender.ClearSelection()
//'This line works fine. It redirects the client to another page
GoToNewNote(Page)
End If
End Sub
在这里调用该方法
Protected Sub LstToMe_SelectedIndexChanged(sender As Object, e As EventArgs) Handles LstToMe.SelectedIndexChanged
ItemClicked(sender)
End Sub
此标记创建一个列表框
<asp:ListBox ID="LstToMe" runat="server" AutoPostBack="True" Rows="10" CssClass="auto-style2" Height="10%"></asp:ListBox>
由于不起作用,我什至将这些代码行放入ItemClicked()
For Each Ctrl In Page.Controls.OfType(Of ListBox)
Ctrl.ClearSelection()
Ctrl.SelectedIndex = -1
Ctrl.Dispose()
Next
Page.Dispose()
均无效。如何摆脱“记住所选项目”?
我希望列表框忘记选择。