我在Page_Load中添加如下代码
            this.DropDownList1.Items.Add(new ListItem("aaaaaaaaaaaaaaaaaaa"));
            this.DropDownList1.Items.Add(new ListItem("bbbbbbbbbbbbbbbbbbb"));
可是我每次select的时候 DropDownList1都会添加一次aaaaaaaaaaaa和bbbbbbbbbb 
即编程两个 “aaaaaaaaaaaaaaaaaaa” 和 两个 “bbbbbbbbbbbbbbbbbbb”
在选择一次就编程三个 “aaaaaaaaaaaaaaaaaaa”和 三个 “bbbbbbbbbbbbbbbbbbb” 如果把AutoPostBack设置成false就不这样 但是selected事件也不响应了
请问大家有什么好的方法让列表不每次都增加相同的内容么

解决方案 »

  1.   

    修改如下,只是在页面第一次加载时给下拉框绑定 protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    this.DropDownList1.Items.Add(new ListItem("aaaaaaaaaaaaaaaaaaa"));
                    this.DropDownList1.Items.Add(new ListItem("bbbbbbbbbbbbbbbbbbb"));
                }
            }
      

  2.   

    if (!IsPostBack)
    {
      this.DropDownList1.Items.Add(new ListItem("aaaaaaaaaaaaaaaaaaa"));
      this.DropDownList1.Items.Add(new ListItem("bbbbbbbbbbbbbbbbbbb"));
    }
      

  3.   

    如 楼上所说,写在if (!IsPostBack)里面就行了:首次加载时添加即可
      

  4.   

    if (!IsPostBack) 
    使第一次加载的时候执行代码,其他post回来的时候不执行。
      

  5.   


    if (!IsPostBack)
    {
      this.DropDownList1.Items.Add(new ListItem("aaaaaaaaaaaaaaaaaaa"));
      this.DropDownList1.Items.Add(new ListItem("bbbbbbbbbbbbbbbbbbb"));
    }
    貌似只有这个办法,除非你在添加之前执行 this.DropDownList1.Items.clear方法
      

  6.   

    出现那种情况是因为你页面回传的时候又绑定了一下,所以你要设置不是回传页面时再添加!if (!IsPostBack)//如果不是回传页面再添加DropDownList1项
                {
                    this.DropDownList1.Items.Add(new ListItem("aaaaaaaaaaaaaaaaaaa"));
                    this.DropDownList1.Items.Add(new ListItem("bbbbbbbbbbbbbbbbbbb"));
                }
      

  7.   

    绑定之前清空ddlthis.DropDownList1.Items.Clear();
      

  8.   

    if (!IsPostBack)

       代码写这里就可以了、

    如果把AutoPostBack设置为false的话他就不提交了、
    所以不会响应你的selected事件
      

  9.   

    或者添加之前清空一下
    DropDownList1.Items.Clear();
      

  10.   

    if (!IsPostBack)

      代码写这里就可以了、

    IsPostBack这个东西楼主需要理解一下,这是说明是否是第一次请求本画面