比如我要实现这样的功能,我的方法是将第一级的gridview的BoundField字段bigclassname转为TemplateField模版字段,然后再放入第二级gridview和绑定的SqlDataSource,问题是我不知道绑定的SqlDataSource的SQL查询语如何获得上一级的ID值,比如我的设想这个SQL语句是这样的:<asp:SqlDataSource ID="SqlDataSource2" runat="server" 
                                ConnectionString="<%$ ConnectionStrings:connstring %>" 
                                SelectCommand="SELECT [id], [smallclassname] FROM [city] WHERE ([biglcassid] = (这里等于上一级的ID值,但不知怎么写)">     表一                                   表二是     id  bigclassname                 id smallclassname bigclassid
     1     中国                           1     北京              1
     2     美国                           1     上海              1
用gridview 后是这样      序号    名称
       1     中国-------------->  //这是第一级gridview
               ├ 北京 ---------->  //这是第二级的gridview  现在我想知道这个SQL查询如何获得上一级的条件ID 
               ├ 上海

解决方案 »

  1.   

    Findcontrol("...") as GridView 
      

  2.   

    不太明白,我基本是直接在前台(aspx)页面直接写的,没在CS里动态设置!
      

  3.   

    一种简单的方法就是,在第一级的gridview中放一个隐藏控件保存上级ID,在第一级的gridview的databound事件中取出隐藏控件的保存的上级ID,执行查询并绑定数据到第二级的gridview上
      

  4.   

    http://www.cnblogs.com/qyfan82/archive/2007/07/27/834063.aspxhttp://hi.baidu.com/zzxap/blog/item/003a4825ad77be6635a80f76.html
      

  5.   

    第二种方法是为主gridview添加一个事件,开始不显示次级gridview,点击主gridveiw然后用ajax动态展开次gridview,次级数据量不大的话,这种作法可能更有效率!看你的需求而定了
      

  6.   

    http://blog.csdn.net/amandag/archive/2008/06/14/2546557.aspx