繁体   English   中英

在SelectedIndexChange事件触发后,列表框弹出回到第一项

[英]List box pops back to the first item after SelectedIndexChange event fires

我有一个3 dropdownlist控件,带有一个正确触发的selectedindexchanged事件。 但是,当您从列表中选择一个项目时,返回到selectedindexchanged事件的索引值不会更改; 列表框将弹出回到列表中的第一项。 任何帮助,将不胜感激。 〜达摩德拉〜

`public partial class Production : System.Web.UI.Page
{ 
    EmployeeQuotientCL.Production _production = null;
    DataSet dsNatureOfWork = new DataSet();
    DataSet dsProjectRegion = new DataSet();
    DataSet dsCountyDetails = new DataSet();
    DataSet dsWorkType = new DataSet();
    DataSet dsTask = new DataSet();


    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
             string userEcode=Convert.ToString(Session["UserID"]); 
            _production = new EmployeeQuotientCL.Production();                       
            dsNatureOfWork = _production.GetNatureOfWork();
            if (dsNatureOfWork.Tables[0].Rows.Count > 0)
            {
                BindDdlNatureOfWork(dsNatureOfWork);
            }
            else
            {
            }
        }            

    }



    public void BindDdlNatureOfWork(DataSet dsNatureOfWork)
    {
        ddlNatureofWork.DataSource = dsNatureOfWork.Tables[0];
        ddlNatureofWork.DataTextField = "NatureOfWorkName";
        ddlNatureofWork.DataValueField = "NatureOfWorkID";
        ddlNatureofWork.DataBind();
        ddlNatureofWork.Items.Insert(0, "--Select Nature of Work--");
    }

    public void FillRegionProject(int NatureOfWorkID)
    {
        if ((NatureOfWorkID != null) || (NatureOfWorkID != 0))
        {
            _production = new EmployeeQuotientCL.Production();
            dsProjectRegion = _production.GetProjectRegion(NatureOfWorkID);
            if (dsProjectRegion.Tables[0].Rows.Count > 0)
            {
                ddlRegionProjectName.DataSource = dsProjectRegion.Tables[0];
                ddlRegionProjectName.DataTextField = "RegionProjectName";
                ddlRegionProjectName.DataValueField = "RegionProjectID";
                ddlRegionProjectName.DataBind();
                ddlRegionProjectName.Items.Insert(0, "--Select Region/Project--");

            }
            else
            {
            }
        }

    }

    protected void ddlRegionProjectName_SelectedIndexChanged(object sender, EventArgs e)
    {
        int RegionProjectID = Convert.ToInt32(ddlRegionProjectName.SelectedValue.ToString());
        FillCounty(RegionProjectID);
        ddlRegionProjectName.SelectedIndex = 0;

    }

    public void FillCounty(int regionprojectID)
    {
        if ((regionprojectID != null) || (regionprojectID != 0))
        {
            _production = new EmployeeQuotientCL.Production();
            dsCountyDetails = _production.GetCounty(regionprojectID);
            if (dsCountyDetails.Tables[0].Rows.Count > 0)
            {
                ddlCountyName.DataSource = dsCountyDetails.Tables[0];
                ddlCountyName.DataTextField = "CountyName";
                ddlCountyName.DataValueField = "CountyID";
                ddlCountyName.DataBind();
                ddlCountyName.Items.Insert(0, "--Select County--");

            }
            else
            {
            }
        }
    }

    protected void ddlNatureofWork_SelectedIndexChanged(object sender, EventArgs e)
    {
        int NowID = Convert.ToInt32(ddlNatureofWork.SelectedValue.ToString());
        FillRegionProject(NowID);
        ddlRegionProjectName.SelectedIndex = 0;
    }

}

}`

您正在执行ddlRegionProjectName.SelectedIndex = 0; 在每个SelectedIndexChanged事件中。

在您共享的代码中,ddlCountyName控件没有事件。

暂无
暂无

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

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