一个看似简单的问题,却不明白。
我在一个Table里创建一个自己创建的DropDownList,选择即不执行SelectedIndexChanged事件。我已经把它设成AutoPostBack=true了,还是不行!这是怎么回事呢?

解决方案 »

  1.   

    选择即不执行SelectedIndexChanged事件是执行吧你看看事件是否丢失
    。NET经常出现这种问题
      

  2.   

    比如有两项a和b,但前显示是a,你选择b时才能触发SelectedIndexChanged事件
    在看看你的SelectedIndexChanged事件是不是当前DropDownList事件,即你双击DropDownList是不是SelectedIndexChanged
      

  3.   

    拖放上面的倒是可以执行,我参照进行改的,但不响应。下面是代码,帮看看有什么问题
    DropDownList ddl=new DropDownList();
    ddl.Items.Add("1");
    ddl.Items.Add("2");
    ddl.Items.Add("3");
    ddl.AutoPostBack = true;
    this.ddl.SelectedIndexChanged += new System.EventHandler(this.ddl_SelectedIndexChanged);
    cell.Controls.Add(ddl);
    private void ddl_SelectedIndexChanged(object sender, System.EventArgs e)
    {   
      Label1.Text= ddl.SelectedValue.ToString() ;
    }
      

  4.   

    你要看看你的dropdownlist是什么时候添加到table里的。
    如果在容器控件load完了以后添加的。都不会将控件添加到控件树中。
    只能显示而不能响应事件。一般是重载creatchildcontrol添加控件。
      

  5.   

    我Dropdownlist 是自已加的代码创建的,我想让他实时生成。
      

  6.   


    private void ddl_SelectedIndexChanged(object sender, System.EventArgs e)
    改成
    protected void ddl_SelectedIndexChanged(object sender, System.EventArgs e)
      

  7.   

    Index不改变是不会执行SelectedIndexChanged事件的
      

  8.   

    询 duguguiyu1984,
    怎么实现重载creatchildcontrol添加控件?这个没用过也。