两个dropdownlist,第二个的下拉项根据第一个选择的来加载,两个都要设置为自动回发!!!那我第二个就无法选值了啊,       
            if (!IsPostBack)
            {
                第一个dropdownlist绑定
            }
            第二个dropdownlist根据第一个在if外面绑定(这样我选择下拉项是就没有意义了,怎么办??)

解决方案 »

  1.   

    对每一个dropdownlist的绑定应该写成一个方法,然后在!IsPostBack里面绑定第一个就好了,你自动回发的时候去触发第一个的TextChange事件再去绑定第二个就可以了
      

  2.   

    制作一个方法。  在方法中进行绑定。    - - 两个绑定到一起就好了咯。。  if(!ispostback){
    ddl1.selectedindex==0
    }
    if(ddl1.selectedindex!=0){
    ddl2绑定 = xxx(ddl1.selectedindex)
    }
      

  3.   

    你为啥要在page_load里面写第二个的绑定撒
    你的第二个不是在第一个的选中事件里面绑定的吗?
      

  4.   

    IsPostBack控制第一个
    第二个根据第一个Change事件控制第二个的值
      

  5.   

        <div>
            <div>
                省份:<asp:DropDownList ID="ddlProvinceList" runat="server" AutoPostBack="true"
                    onselectedindexchanged="ddlProvinceList_SelectedIndexChanged">
                </asp:DropDownList>
            </div>
            <div>
                城市:<asp:DropDownList ID="ddlCityList" runat="server" >
                </asp:DropDownList>
            </div>
        </div>
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                ProvinceDataBind();
            }
        }    protected void ProvinceDataBind()
        {
            var list = new[] {
                new {ID="1",ProvinceName="湖南"},
                new {ID="2",ProvinceName="上海"},
                new {ID="3",ProvinceName="北京"}
            }.ToList();        ddlProvinceList.DataSource = list;
            ddlProvinceList.DataTextField = "ProvinceName";
            ddlProvinceList.DataValueField = "ID";
            ddlProvinceList.DataBind();
        }
        protected void ddlProvinceList_SelectedIndexChanged(object sender, EventArgs e)
        {
            ddlCityList.Items.Clear();        string provinceName = ddlProvinceList.SelectedItem.Text;
            switch (provinceName)
            {
                case "湖南":
                    ddlCityList.Items.Add(new ListItem("长沙", "1"));
                    break;
                case "上海":
                    ddlCityList.Items.Add(new ListItem("上海市", "2"));
                    break;
                default:
                    break;
            }
        }
      

  6.   

    万分感谢大家~~~~应该在第一个的change方法里面绑定第二个!!!结贴