繁体   English   中英

未触发DropDownList OnSelectedIndexChanged

[英]DropDownList OnSelectedIndexChanged not triggered

这是我的问题,我的asp.net中有一个dropdownlist ,还有一个gridview 基于DropDownList的选定值,我想将内容/绑定数据更改为GridView。 但这并没有发生, OnSelectedIndexChanged事件不会在更改时触发。

Aspx代码:

<asp:DropDownList ID="drpRegion" runat="server" CssClass="ddlfield" AutoPostBack="true"
                OnSelectedIndexChanged="drpRegion_SelectedIndexChanged" />

Aspx.cs代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        BindDropDown();    //data binding for dropdownlist
        BindRegionWiseTally();    //data binding for gridview
    }
}

protected void drpRegion_SelectedIndexChanged(object sender, EventArgs e)
{
     BindRegionWiseTally();   //data binding for gridview
}

我已经根据建议设置了Page的EnableViewState="false"

尝试将BindDropDown()方法移到Page生命周期的早期,然后无条件地进行操作。

protected override void OnInit(EventArgs e)
{
    BindDropDown();//data binding for dropdownlist
}

澄清一下-是的,这是因为您将Page的EnableViewState设置为false。

实际上,不仅是选定的值-下拉列表项的整个列表(保存在ViewState中)应该对您来说已经消失了。

一旦有了项目列表,就会设置SelectedValue属性,这取决于它。

在禁用ViewState的情况下,您不会在每次回发时自动恢复该列表。

由于尝试时未发现任何代码更改,因此Dropdownchange事件正在触发,请保留断点并进行检查,

ASPX代码:

<asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" AutoPostBack="True">
     <asp:ListItem Value="1">Tracking Reader</asp:ListItem>
     <asp:ListItem Value="2" Selected ="True" >Dropbox Reader</asp:ListItem>
</asp:DropDownList>

Aspx.cs代码

   protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindDropDown();//data binding for dropdownlist
            //BindRegionWiseTally();//data binding for gridview
        }
    }

    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        Response.Write("Invoked sucessfully.");
    }
    protected void BindDropDown()
    {
        DropDownList1.Items.Add("All");
        DropDownList1.Items.Add("New");
        DropDownList1.Items.Add("Update");
        DropDownList1.Items.Add("Delete");
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM