我有dropdownlist
,当选择特定项目时,需要设置另一个dropdownlist.visible = true
。很遗憾,我无法获取dropdownlist
(或我整个网站上的任何其他dropdownlist
)以触发其SelectedIndexChanged
事件。
详细说明:
SelectedIndexChanged
事件都不会发生。我尝试了以下事项:
AutoPostBack="true"
AutoEventWireup="true"
EnableViewState="true"
将OnSelectedIndexChanged="ddlCLSortOptions_SelectedIndexChanged"
添加到asp:dropdownlist对象,这会给我以下错误:
编译器错误消息:BC30456:'ddlCLSortOptions_SelectedIndexChanged'不是'ASP.reports_aspx'的成员。
这个错误使我无法检查Inherits和Class名称中的任何差异,但我发现的唯一区别是该类名为reports
,而Inherits为ProviderLicense.reports
。当然,当我将它们更改为相同时,会产生完全不同的错误。
ddlCLSortOptions_SelectedIndexChanged
Sub从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
我希望这是我刚刚错过的一些简单的事情,但我现在愿意尝试任何事情。
答案 0 :(得分:0)
在AutoEventWireUp="false"
reports.aspx
在OnSelectedIndexChanged="ddlCLSortOptions"
reports.aspx
Private Sub
Protected Sub
事件将OnSelectedIndexChanged
更改为reports.aspx.vb