//我这个是二级级联菜单的查询.比方:我第一个下拉条选择"烟台",第二个条选择其中的"所有",那么,烟台下面所有的县级市的数据
//都显示出来,我就是实现这个"所有"的查询功能(单个的实现了)....语句解释如下:(感觉挺简单,可就是没有实现.郁闷了)if (cityName == "所有")
{
   string id = DropDownList2.SelectedValue;       
   BLL.DeviceGroup bllDG6 = new BLL.DeviceGroup();
   DataSet ds6 = bllDG6.GetCounty(id); //根据id号查询出地级市下面所有的县级市,此处断点调试是正确的;
//关键是下面,我不确定我这样写是否是正确的,我的思路解释如下:
   for(int m=0;m<ds6.Tables [0].Rows .Count ;m++)   //m=4,我数据库中只存了4个县级市,我也是正确的;
   {
  //定义一个数据集,以存县级市设备的信息数据;(共要存4条记录,不知这样定义是否正确.是不是要用数组??)    DataSet ds7 = new DataSet();       
    BLL.Devices  bllDG7 = new BLL.Devices();   //对数据库的操作;
    ds7=bllDG7.GetQueryUser(ds6.Tables[0].Rows[m]["groupName"].ToString());//根据县级市来查询设备的信息;
                            
    DataTable dt7 = new DataTable();     //我不知道这里是否正确??
    dt7 = ds7.Tables[0];//这下面的应该全是固定格式,我用的是GridView显示;
    // 设置每页的现实的记录数
   int pagesize = 5;                      // 默认每页5条记录
   gvInfo.PageSize = pagesize;    // 绑定内容
   gvInfo.DataSource = dt7.DefaultView;
   gvInfo.DataBind();   // 设置翻页区域
   txtGO.Text = (this.gvInfo.PageIndex + 1).ToString();
   lblPageSize.Text = gvInfo.PageSize.ToString();
   if (dt7.Rows.Count == 0)
       lblCurPage.Text = "0";
   else
       lblCurPage.Text = (gvInfo.PageIndex + 1).ToString();
       lblTotalPage.Text = gvInfo.PageCount.ToString();
       lblTotalRecord.Text = dt7.Rows.Count.ToString();        // 设置翻页按钮的可点击状态。
         PagingButtonState(gvInfo.PageIndex, gvInfo.PageCount);
 }               

解决方案 »

  1.   

    给你一个 我写的 ddlProvince和ddlCity 分别是表示省和市的 DropDownList
        protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)
        {
            string strSql = "SELECT id,city FROM City WHERE (state = @city)";
            OleDbParameter[] prams = {new OleDbParameter("@city",OleDbType.VarChar)};
            prams[0].Value = this.ddlProvince.SelectedItem.Text;
            OleDbDataReader dr = access.getDataReader(strSql, prams);
            this.ddlCity.DataSource = dr;
            this.ddlCity.DataValueField = "id";
            this.ddlCity.DataTextField = "city";
            this.ddlCity.DataBind();
        }