У меня есть dropdownlist
, что при выборе определенного элемента необходимо установить еще один dropdownlist.visible = true
. К сожалению, я не могу получить dropdownlist
(или любой другой dropdownlist
на моем весь сайт), чтобы запустить его событие SelectedIndexChanged
.VB DropDownList.SelectedIndexChanged Event Not Firing
Детали:
- Это сайт, который был создан моим предшественником, и у меня нет времени, чтобы восстановить его или даже модернизировать это так, мне действительно нужно просто добавить одну особенность, чтобы завершить мой задача.
- Сайт написан на Visual Studio .NET 2003.
- В настоящее время, независимо от того, что я пытаюсь, событие
SelectedIndexChanged
никогда не срабатывает.
Я попытался следующие вещи:
- Set
AutoPostBack="true"
- Набор
AutoEventWireup="true"
- Набор
EnableViewState="true"
Добавить
OnSelectedIndexChanged="ddlCLSortOptions_SelectedIndexChanged"
в аспида: DROPDOWNLIST объект, который дает мне следующую ошибку :Compiler Error Message: BC30456: 'ddlCLSortOptions_SelectedIndexChanged' is not a member of 'ASP.reports_aspx'.
Эта ошибка привела меня к пути проверки различий в именах Inherits и Class, но единственная разница, которую я обнаружил, заключается в том, что класс имеет имя
reports
, а Inherits -ProviderLicense.reports
. Конечно, когда я меняю их на одинаковые совпадения, это порождает совершенно другую ошибку.- Изменить
ddlCLSortOptions_SelectedIndexChanged
Подпись отPrivate
доProtected
, а затем даже доPublic
только для хорошей меры. - Снимите
Handles ddlCLSortOptions.SelectedIndexChanged
и добавьтеAddHandler
опцию
я уверен, что есть еще, что я пробовал, но я не могу думать ни о чем другом.
Вот мой код:
reports.aspx
<%@ Page Language="vb" AutoEventWireup="true" Codebehind="reports.aspx.vb" Inherits="ProviderLicense.reports"%>
...
<asp:dropdownlist id="ddlCLSortOptions" style="POSITION: absolute; LEFT: 365px; Z-INDEX: 140; TOP: 315px" runat="server" AutoPostBack="True" Visible="False">
<asp:ListItem Value="Provider" Selected="True">Provider</asp:ListItem>
<asp:ListItem Value="RecDate">Received Date</asp:ListItem>
<asp:ListItem Value="EntDate">Entered Date</asp:ListItem>
<asp:ListItem Value="DateComp">Date Completed</asp:ListItem>
<asp:ListItem Value="LicType">License Type</asp:ListItem>
<asp:ListItem Value="Investigator">Investigator</asp:ListItem>
<asp:ListItem Value="Worker">Worker</asp:ListItem>
<asp:ListItem Value="Disposition">Disposition</asp:ListItem>
</asp:dropdownlist>
reports.aspx.vb
Public Class reports
Inherits System.Web.UI.Page
Protected WithEvents ddlCLSortOptions As System.Web.UI.WebControls.DropDownList
...
Private Sub ddlCLSortOptions_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ddlCLSortOptions.SelectedIndexChanged
Label2.Text = "IT WORKED!" 'Just to see if the event fires
If ddlCLSortOptions.SelectedValue = "Disposition" Then
lblDisposition.Visible = True
ddlDisposition.Visible = True
Else
lblDisposition.Visible = False
ddlDisposition.Visible = False
End If
End Sub
Я надеюсь, что это что-то простое, что я просто пропустил , но я открыт, чтобы сейчас что-то попробовать.
изменения тег VS в тег ASP привлечь соответствующий глаза – Plutonix
спасибо, просто изменили его –
Настройка AutoPostBack = True заставляет меня работать для меня. Попробуйте в новом проекте, чтобы проверить его. Если он не будет работать в вашем текущем проекте, удалите и заново создайте элемент управления. – Steve