http://community.csdn.net/Expert/topic/5277/5277993.xml?temp=.7882196这个问题,幕白兄能帮我一下吗?实在没办法了,帖子放在第一页也不行,只好出此下策,谢谢!

解决方案 »

  1.   

    主  题:  单击时把DataGrid中的某列的值通过Session传出去的问题  
    作  者:  byhum (相见不如怀念)        Blog  
    等  级:    
    信 誉 值:  100  
    所属社区:  .NET技术 ASP.NET  
    问题点数:  20  
    回复次数:  12  
    发表时间:  2007-1-6 9:01:38  
       
     
       我用下面的方法在用户单击DataGrid的时候打开一个新页:
    private void DataGrid1_ItemDataBound_1(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    e.Item.Attributes.Add ("onclick","window.open('yl.aspx?ID="+e.Item.Cells [0].Text +"')");
    }
    现在我不希望通过url来传值了,我想通过Session来完成:
    private void DataGrid1_ItemDataBound_1(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    e.Item.Attributes.Add ("onclick","window.open('yl.aspx?')");
    Session["LoginName"]=e.Item.Cells [0].Text;
    }
    可是我在另一页接收的时候,发现Session["LoginName"]是一个空格符&nbsp,请问这是怎么回事?=========================================================把Session["LoginName"]=e.Item.Cells [0].Text; 这行代码从ItemDataBound事件中拿出来
    放到 command 事件中  没用过datagrid 就用过gridview 见笑了  绑定数据的时候循环执行  那样在循环给session["LoginName"]赋值  当然不是你需要的  防到 command 事件中  在点击后 把当前行的 loginName 的值再赋给session