在dropdownlist中,selectedindexchanged事件不会改变其状态

时间:2011-02-01 06:34:22

标签: c# asp.net drop-down-menu selectedindexchanged

在以下代码中,每次只从dropdownlist中获取一个项目。当我从下拉列表中选择任何其他项目时,与第一项相同。

请给出解决方案

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
    DataSet _subcat = new DataSet();
    _subcat = serviceus.Get_SERVICEUS_SUB_CATEGORYLIST(DropDownList1.SelectedValue.ToString());
    lbsubcategory.DataSource = _subcat.Tables[0].DefaultView;
    lbsubcategory.DataTextField = Convert.ToString(_subcat.Tables[0].Columns["CATEGORY_SUB1_NAME"].ColumnName);
    lbsubcategory.DataBind();
    Label5.Visible = true;
}

3 个答案:

答案 0 :(得分:1)

检查如何绑定下拉列表。每当你的页面发布回服务器时,我认为你就会绑定它。尝试使用页面的IsPostBack属性:

if (!IsPostBack){
   DropDownList1.DataSource = datasource;
   DropDownList1.DataBind();
}

答案 1 :(得分:0)

你有:

if(!IsPostBack) {
    DataBind();
}

在您的初始数据绑定周围(例如在OnLoad中)

答案 2 :(得分:0)

lbsubcategory上的EnableViewState =“False”。

假设AutoPostBack =“True”OnSelectedIndexChanged =“DropDownList1_SelectedIndexChanged”