如果你数据是在DataView中,可以用下面的方法
DataView dataView1 = new DataView();
…………//填充DataView
dataView1.RowFilter =  "[省份的列] = " + DropDownList1.SelectedValue;
然后再把dataView1里的数据绑到DropDownList2
  

解决方案 »

  1.   

    我以前设计的时候是用selectchange服务端时间,一旦变化,就在事件中处理,清空dropdownlist2,但这种方式不好,需要回传给服务器处理,还是用客户端jscript脚本比较好。
      

  2.   

    TO:ruanyuping() 请问你能不能给个实例我参考??谢谢!!
      

  3.   

    把省份的autochangeback属性设为true
    private void state_data(string id){
    SqlConn openDB = new SqlConn();
    openDB.connstr="masterefu";
    DataTable dt = openDB.Exec_dt("SELECT * FROM province_city where f_id=0 order by id"); state.DataSource=dt;
    state.DataTextField="city";
    state.DataValueField="id";
    state.DataBind();
    for (int i=0;i<dt.Rows.Count;i++){
    if (id.Trim()==dt.Rows[i]["id"].ToString().Trim()){
    state.SelectedIndex = i;
    }
    }

    } private void city_data(string f_id,string id){
    if (f_id!=""){
    SqlConn openDB = new SqlConn();
    openDB.connstr="masterefu";
    DataTable dt =openDB.Exec_dt("SELECT * FROM province_city where f_id="+f_id+" order by id");
    city.DataSource=dt;
    city.DataTextField="city";
    city.DataValueField="id";
    city.DataBind();
    for (int i=0;i<dt.Rows.Count;i++){
    if (id.Trim()==dt.Rows[i]["id"].ToString().Trim()){
    city.SelectedIndex= i;
    }
    } } }private void my_sl(object sender, System.EventArgs e) {
    //选择省份事件
    city_data(state.SelectedItem.Value,"0");
    }