你们看上面的SelectedValue就不对,下面的就对了,为什么呢数据库中的表都是ID和信息内容,一模一样的

解决方案 »

  1.   

    你查看一下,每myad.fill后 , myds里的数据,
      

  2.   

    在myad.Fill(myds, "ID");设断点,按F10运行到这句后,mouse点myds,打开myds就可看到myds里的所有数据。
      

  3.   


    我发现都成了这种的了,是不是不能用ID作为表名或者是用Rows[0][0].ToString();  Rows[1][0].ToString();
    Rows[2][0].ToString();这样输出也行?为什么都到了ID表中的呢,每次不是都new的?
      

  4.   

    先将数据绑定到控件,再设置selectedvalue
      

  5.   

    DropDownList绑定数据库中数据读取显示值示例 
    //DropDownList显示设置
    <asp:DropDownList ID="ddldown" runat="server" AutoPostBack="True">
                                </asp:DropDownList>
    //加载数据库绑定控件下拉框显示数据
     SqlConnection sqlcon;//codego.net/tags/11/1/
        string strCon = ConfigurationManager.AppSettings["conn"];
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                sqlcon = new SqlConnection(strCon);
                string sqlstr = "select Province from tb_Province";
                SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
                DataSet myds = new DataSet();
                sqlcon.Open();
                myda.Fill(myds);
                ddldown.DataSource= myds;
                ddldown.DataValueField = "Province";
                ddldown.DataBind();
                sqlcon.Close();
            }
        }
      

  6.   

    确实是先绑定了,然后再设置的
    现在的问题是每次fill后ID表中都有值,唯独xb这句没有值,为什么呢?代码一模一样的呀。。
      

  7.   

    那就看看你数据库里面xb表有没有ID=2的值
      

  8.   

    查询性别的sql语句,xb单引号前面似乎多了一个空格。Access里面查不出来了