在DataGrid里面加入一个按钮列(LinkButton),然后把CommandArgument绑定为数据库的ID值,在DataGrid的ItemCommand中检测LinkButton的CommandName,然后根据CommandArgument来重新绑定DataGrid

解决方案 »

  1.   

    还有一个方法是加入一个超连接列,把DataNavigateUrlField设置为ID字段,把DataNavigateUrlFormatString属性设置为"detail.aspx?id={0}",然后在detail.aspx中根据URL中的参数来显示数据。
      

  2.   

    呵呵,最简单的方法都被 icyer() 说完了~
      

  3.   

    你还可以考虑使用Multipage+Tabstrip控件
    再一个PageView中显示DataGrid,另一个PageView中显示数据
    这样还可以方便浏览,在一个页面的两个PageView中切换查看数据而不用刷新
      

  4.   

    也就是在detail列怎么根据URL中的参数来判断啊。
      

  5.   

    DATAGRID里有一个属性,叫DataKeyField,给这个属性赋值"ID",当点击后取DATAGRID1.DataKeys[datagrid1.SelectIndex]就可以取出来“ID”字段了
      

  6.   

    to hgknight(江雨.net) ( )Multipage+Tabstrip控件哪儿有?
      

  7.   

    MS单独发布的IEWebControls里面就有TreeView,MultiPage,TabStrip等控件。
      

  8.   

    public void show()
    {
    //string aa=Request.Params["Id"];
    SqlConnection myConnection = new SqlConnection("server=10.88.17.15;database=hr;Uid=hr;Pwd=bgphr;");
    SqlDataAdapter myAdap1 = new SqlDataAdapter("select * from Hr_Jx_Khmc where id=? ", myConnection);
    DataSet ds = new DataSet();
    myAdap1.Fill(ds, "Hr_Jx_Khmc");
    getchild(num); 
    //getchild 是 我定义的函数,它的参数就是从上一页传过来的那个表的主键,也就是那张表的id字段。但是我不知道怎样从上一页接受Id,也就是把参数怎么从上一页传过来。*************************************************************
    以下是上一页我定义dbgrid来显示,在这一页点击相应的项进入下一页。
    <form id="khmc" method="post" runat="server">
    <FONT face="宋体">
    <asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 119px; POSITION: absolute; TOP: 55px" runat="server" Width="133px" AutoGenerateColumns="False" Height="175px" ForeColor="Blue" DataKeyField="Id">
    <ItemStyle ForeColor="#FF80FF"></ItemStyle>
    <Columns>
    <asp:HyperLinkColumn Text="考核名称" DataNavigateUrlField="id" DataNavigateUrlFormatString="khshow.aspx?Id={0}" DataTextField="Khmc" HeaderText="考核名称" NavigateUrl="khshow.aspx"></asp:HyperLinkColumn>
    </Columns>
    </asp:datagrid>
    </FONT></form>
      

  9.   

    在show()函数中:
    string ID = Request.QueryString["ID"];
    ...
    SqlDataAdapter myAdap1 = new SqlDataAdapter("select * from Hr_Jx_Khmc where id='" + ID + "'", myConnection);
      

  10.   

    还有,去掉<asp:HyperLinkColumn>中的NavigateUrl属性。
      

  11.   

    把DataNavigateUrlField设置为ID字段,把DataNavigateUrlFormatString属性设置为"detail.aspx?id={0}",然后在detail.aspx中根据URL中的参数来显示数据。
    icyer() 已经说了呀
      

  12.   

    真是谢谢各位高手的帮忙,几个月以来的变编程生活,使我放弃了编程。(但是有时候还是会编一些),也使我的信心收到伤害。我一直觉得自己很优秀,但现在我在怀疑,我即将成为一名文档编写人员,是痛苦还是幸福呢,我自己也不知道也。
    看着这么多带星的朋友来帮我,我真的很感激,特别是icyer,你帮我解决了很多问题,真是谢谢你了。由于级别不够,我只能给100分,但好象这些对你们微不足道。但我想既然问题已经解决了,我的分也该结了,算是对你们的感谢吧。当然我对你们的感激之情远不止这么点分了。