我正在工作委员会网站,特别是目前的求职页面。我将找到的作业返回到DataBound
GridView
(即gvwJobs
)中,并且在其中HeaderTemplate
我有一个DropDownList
命名ddlSortDirection
,它指定执行排序的方向:
<asp:DropDownList runat="server" ID="ddlSortDirection" AutoPostBack="true" OnSelectedIndexChanged="ddlSortDirection_SelectedIndexChanged">
<asp:ListItem Value="DESC">DOWN</asp:ListItem>
<asp:ListItem Value="ASC">UP</asp:ListItem>
</asp:DropDownList>
如您所见,我已确保AutoPostBack
已启用。我还在GridView
'sDataBound
事件上创建了一个自定义事件处理程序,如下所示:
Protected Sub gvwJobs_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvwJobs.RowDataBound
If e.Row.RowType = DataControlRowType.Header Then
ddlSortDirection.AutoPostBack = True
AddHandler ddlSortDirection.SelectedIndexChanged, AddressOf ddlSortDirection_SelectedIndexChanged
End If
End Sub
我发现在ddlSortDirection_SelectedIndexChanged
更改选择时不会调用 SubProcedure ddlSortDirection
。我可以看到PostBack
发生了 a ,但绝对没有调用该方法。我尝试做的是在DropDownList
外部创建一个类似的GridView
并且成功地触发了SelectedIndexChanged
事件,甚至没有自定义事件处理程序!
请你能帮助我实现我的目标,即在 a内DropDownList
触发SelectedIndexChanged
事件吗?HeaderTemplate
GridView