.aspx文件: 
<asp:DropDownList ID="classname" runat="server"> </asp:DropDownList> .aspx.cs文件: 
protected void Page_Load(object sender, EventArgs e) 

ConnString = new OleDbConnection(Conn); 
ConnString.Open(); 
string strCom = "Select * from Class"; 
OleDbCommand cmd = new OleDbCommand(strCom, ConnString); //获取数据库中记录条数 
string strCom2 = "Select count(*) from Class"; 
OleDbCommand cmd2= new OleDbCommand(strCom2,ConnString); 
int Count = (int)cmd2.ExecuteScalar();//Count得到记录数 OleDbDataReader dr = cmd.ExecuteReader(); 
if (dr.Read()) 

//for(int i=0;i<Count;i++) 
//{ 
//classname.SelectedItem.Value=dr["ClassName"].ToString(); //从数据库里读取数据 
//} 

} 请问用dropdownlist控件怎样显示数据库的记录?如果用FOR循环显示数据又怎样写?或者有其它更好的方法!

解决方案 »

  1.   

    classname.datasource=datatable(or dataset.table[0]);
    classname.bind();
    classname字段绑定下就好了
      

  2.   

    classname.Items.Clear()
    while (dr.Read()) 
    { ListItem li = new ListItem( dr["ClassName"].ToString());
    classname.Items.add(li)
    } 绑定也挺方便
      

  3.   

    classname.datasource=datatable(or dataset.table[0]);
    classname.bind();
      

  4.   

    this.classname.DataSource = lstPurvey;
    this.classname.DataTextField = "Name";
    this.classname.DataValueField = "Id";
    this.classname.DataBind();
      

  5.   

    请问一楼怎么个绑定法,在程序里我没有用到DataSet类的,能详细点?
      

  6.   

    拖一个Dataset控件,就有了。你可以在界面上邦定,也可以象一楼一样在程序里面绑定。
      

  7.   

    建议用dataset返回数据集,然后按:
    this.classname.DataSource = lstPurvey;
    this.classname.DataTextField = "Name";
    this.classname.DataValueField = "Id";
    this.classname.DataBind();
    绑定,如果你一定要用sqldatareader读取数据.你得先据一条条写取到arraylist里面.然后再把arraylist绑定dropdownlist!