DropDownList SelectedIndexChanged 事件未在 GridView HeaderTemplate 内触发

2024-02-02

我目前正在工作委员会网站上工作,特别是工作搜索页面。我正在将找到的工作返回到DataBound GridView(即gvwJobs),并且在HeaderTemplate我有一个DropDownList named 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's DataBound事件如下:

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当选择更改时,不会调用子过程ddlSortDirection。我可以看到PostBack发生,但该方法肯定没有被调用。我尝试做的是创建一个类似的DropDownList之外的GridView并成功触发了SelectedIndexChanged事件甚至没有自定义事件处理程序!

请你能帮助我实现拥有一个DropDownList发射SelectedIndexChanged事件发生在HeaderTemplate of a GridView?


set the EnableViewState将该 GridView 设置为 false

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DropDownList SelectedIndexChanged 事件未在 GridView HeaderTemplate 内触发 的相关文章