CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

请教一个datagrid中取值的问题,对于你们可能很简单,但是能进来给点建议吗?

楼主dino815613(浪客)2006-05-01 23:31:08 在 .NET技术 / ASP.NET 提问

我的datagrid绑定了数据,其中一个列是模板来的,上面有个超链接,只要点击上面的链接就可以打开一个页面,上面可以自动显示原来页面模板上面相应的绑定内容,好像ID,名称阿,只要点击链接就显示这一横的内容,请问怎么做到呢?这里我想说清楚的是把值传到另外一个页面显示而不是在这个页面的datagrid上面显示的,是不是要用到session呢,最好有代码,谢谢了 问题点数:0、回复次数:6Top

1 楼DJfeng(丹仔)回复于 2006-05-02 00:44:27 得分 0

先为DataGrid添加一个选择列,然后添加DataGrid_ItemCommand事件,代码如下:  
  private   void   DataGrid_ItemCommand(object   source,System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
  {  
  int   i   =   Convert.ToInt32(this.DataGrid1.DataKeys[e.Item.ItemIndex]);  
  con.open()  
  SqlCommand   dr=new   SqlCommand("select   *   from   表   ",con);      
  SqlDataReader   dd   =   dr.ExecuteReader();  
  dd.Read();  
  Session   ["name"]=dd["Name"];  
  Session   ["idD"]=dd[ID].ToString();  
    ........  
  Response.Redirect("你想去的页面");  
  }  
                          最后在你想去的页面直接用这些Session.Top

2 楼dino815613(浪客)回复于 2006-05-02 01:00:17 得分 0

你好,DJfeng(丹仔),谢谢你这么晚还为我解答,我有个疑问,为什么要写在DataGrid_ItemCommand事件里面呢?还有一定要这样写吗  
                                                SqlCommand   dr=new   SqlCommand("select   *   from   表   ",con);      
  SqlDataReader   dd   =   dr.ExecuteReader();  
  dd.Read();  
  Session   ["name"]=dd["Name"];  
  Session   ["idD"]=dd[ID].ToString();  
   
  我这样写行不行,在datagrid加载的时候帮定数据库,然后取当前行第一列的值        
      Session   ["idD"]=dt.Rows[dataGrid1.CurrentRowIndex][0].ToString();    
       
   
  Top

3 楼DJfeng(丹仔)回复于 2006-05-02 02:24:03 得分 0

 
    比如说你点击了DataGrid中的那行选择列绑定的字段(id),`就触发了DataGrid_ItemCommand事件  
                    接着你就可以从数据库中读你想要的字段  
                            int   i   =   Convert.ToInt32(this.DataGrid1.DataKeys[e.Item.ItemIndex]);  
   
                            SqlCommand   dr=new   SqlCommand("select   *   from   Topic   where   ID="   +i,con);      
                  这样你可以随便取哪列的值~  
  Top

4 楼dino815613(浪客)回复于 2006-05-02 13:05:46 得分 0

to   DJfeng(丹仔),非常感谢你,问题我解决了,谢谢Top

5 楼dino815613(浪客)回复于 2006-05-02 13:45:25 得分 0

怎么现在不能出现我希望的数据的?Top

6 楼dino815613(浪客)回复于 2006-05-02 13:49:30 得分 0

private   void   dataGrid1_ItemCommand(object   source,   System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
  {  
  string   str="select   ID,Name,BeginTime,ZiJin,State   from   XiangMu   order   by   ID   ASC";  
  SqlCommand   comm=new   SqlCommand(str,conn);  
  try  
  {  
  conn.Open();  
  SqlDataReader   reader=comm.ExecuteReader();  
  reader.Read();  
  Session.Add("ID","");  
  Session.Add("Name","");  
  Session   ["ID"]=reader["ID"];  
  Session   ["Name"]=reader["Name"];  
   
  }  
  catch(Exception   ee)  
  {  
  Response.Write("<script   languge=javascript>   alert('"+ee.Message+"');</script>");  
  }  
  finally  
  {  
  conn.Close();  
  }  
   
   
  在另外一个页面上面  
                                                            textID.Text=Session["ID"].ToString();  
    textName.Text=Session["Name"].ToString();  
   
  怎么就不能看到我选中那行的数据的呢?  
  (有datagrid的那个页面我有个模板列,上面有个超链接“查看”,点击后就出现以上那个页面显示ID,和Name了Top

相关问题

关键词

得分解答快速导航

  • 帖主:dino815613

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo