是不是需要用Page.FindControl找到后
做强制类型转换才可以用呢?不过帮你顶,给点份,谢谢!

解决方案 »

  1.   

    你的userclass确实没有定义,它放在了DataList里面,绑定数据就会重复出许多个。
    参考DropDownList in DataGrid,道理是一样的:
    http://www.csharphelp.com/archives/archive212.html
      

  2.   

    给你一个C#版的。供你参考:
    private void get_list1()
    {
    cn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath(ConfigurationSettings.AppSettings["ds"]));
    string strSQL="select * from sort_material where sort_name order by sort_num";
    cm=new OleDbCommand(strSQL,cn);
    cn.Open();
    dr=cm.ExecuteReader();
    list1.DataSource=dr;
    list1.DataTextField="sort_name";
    list1.DataValueField="sort_num";
    list1.DataBind();
    cn.Close();
    }
    我想你先把你的DropDownList的ID换一下试试,看看能不能解决。
      

  3.   

    我的意思就是先选中用户所选的userclass,然后再列出所有的userclass如果不用DATALIST也可以,就是用cookie来定义各个数据段,只绑定dropdownlist,但是我就是不知道怎么样才能将用户原先选的值放在最上面,下面列出所有值?
      

  4.   

    userclass.SelectedIndex=userclass.Items.IndexOf(new ListItem(request.Cookies("userinfo")("userclass"),request.Cookies("userinfo")("userclass")))解决了。
    谢谢大家!