代码之家  ›  专栏  ›  技术社区  ›  Surya sasidhar

在下拉控件selectedindexchanged事件中获取错误?

  •  0
  • Surya sasidhar  · 技术社区  · 15 年前

    在我的web应用程序中,当我选择一个下拉控件时,它会给出类似的错误。

        try
        {             
            ddlState.Items.Clear();
            ddlState.Enabled = true;
            ListItem li1 = new ListItem();
            li1.Value = "0";
            li1.Text = "Select State";
            ddlState.Items.Add(li1);
            clsStates.Countryid = int.Parse(ddlCountry.SelectedValue.ToString());
            DataSet ds = clsStates.selectStateBl();
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                li1 = new ListItem();
                li1.Text = ds.Tables[0].Rows[i]["statename"].ToString();
                li1.Value = ds.Tables[0].Rows[i]["stateid"].ToString();
                ddlState.DataTextField = "statename";
                ddlState.DataValueField = "stateid";
                ddlState.Items.Add(li1);
            }
        }
        catch
        {
    
        }
    

    这是约束国家的准则。。。

         try
        {
    
            ListItem li = new ListItem();
    
            DataSet ds = clsCountrys.selectCountryB();
    
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                li = new ListItem();
                li.Text = ds.Tables[0].Rows[i]["countryname"].ToString();
                li.Value = ds.Tables[0].Rows[i]["countryid"].ToString();
                if (li.Value == Session["usercountry"].ToString())
                    li.Selected = true;
                ddlCountry.DataTextField = "countryname";
                ddlCountry.DataValueField = "countryid";
                ddlCountry.Items.Add(li);
            }
        }
        catch
        {
    
        }
    

    这是对下拉控件的状态绑定。。

         try
        {
            ddlState.Items.Clear();
            ddlState.Enabled = true;
            ddlState.ClearSelection();
            ListItem li1 = new ListItem();
            li1.Value = "0";
            li1.Text = "Select State";
            ddlState.Items.Add(li1);
            clsStates.Countryid = int.Parse(ddlCountry.SelectedValue.ToString());
            DataSet ds = clsStates.selectStateBl();
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
    
                li1 = new ListItem();
                li1.Text = ds.Tables[0].Rows[i]["statename"].ToString();
                li1.Value = ds.Tables[0].Rows[i]["stateid"].ToString();
                if (Session["userstate"].ToString() == li1.Value)
                    li1.Selected = true;
                ddlState.DataTextField = "statename";
                ddlState.DataValueField = "stateid";
                ddlState.Items.Add(li1);
            }
        }
        catch
        {
    
        }
    
    1 回复  |  直到 15 年前
        1
  •  1
  •   Pranay Rana    15 年前

    ddlState.ClearSelection() 方法清除默认选择。

    ASP.NET Tips: DropDownList.ClearSelection() to avoid "Cannot have multiple items selected in DropDownList"

      try
        {
            ddlState.ClearSelection();
            ddlState.Items.Clear();
            ddlState.Enabled = true;
    
            ListItem li1 = new ListItem();
            li1.Value = "0";
            li1.Text = "Select State";
            ddlState.Items.Add(li1);
            clsStates.Countryid = int.Parse(ddlCountry.SelectedValue.ToString());
            DataSet ds = clsStates.selectStateBl();
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
    
                li1 = new ListItem();
                li1.Text = ds.Tables[0].Rows[i]["statename"].ToString();
                li1.Value = ds.Tables[0].Rows[i]["stateid"].ToString();
    
                ddlState.DataTextField = "statename";
                ddlState.DataValueField = "stateid";
                ddlState.Items.Add(li1);
    
            }
    
              //code updated by pranay rana
               ddlState.ClearSelection();
                  ListItem li = ddlState.Items.FindByValue(Session["userstate"].ToString());
                    if (li != null)
                    {
                        li.Selected = true;
                    }
               //code updated by pranay rana
        }
        catch
        {
    
        }
    
    推荐文章