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

datagrid超链接列的问题?

楼主shiyi2005(风&影)2006-01-10 00:14:43 在 .NET技术 / C# 提问

private   void   zcfglist_ItemDataBound(object   sender,   System.Web.UI.WebControls.DataGridItemEventArgs   e)  
  {  
  if     (e.Item.ItemType!=ListItemType.Header)    
  {  
          string     subject=Convert.ToString(DataBinder.Eval(e.Item.DataItem,"wjmc"));  
      if     (subject.Length>26)          
      {      
      subject=subject.Substring(0,25)+     "...     ";      
      }      
      e.Item.Cells[0].Text=subject;      
  }  
  }  
  原本是超链接列..可是转换以后没有链接了..该怎么处理啊?  
  问题点数:20、回复次数:5Top

1 楼net_lover(【孟子E章】)回复于 2006-01-10 07:57:01 得分 10

办法1:用正则表达式分解出链接的的文件和href在进行判断  
  办法2:在zcfglist_ItemDataBound里生成链接而不是直接用链接列  
  办法3:绑定的时候进行判断,<%#   ....Length>16?   ...   :   ...%>Top

2 楼singlepine(小山)回复于 2006-01-10 08:17:35 得分 5

后台  
  protected   string   Format(object   item,string   type)  
  {  
                          DataRowView   drv=(DataRowView)item;  
                          string   val=string.Empty;  
                          string     subject=Convert.ToString(drv["wjmc"]));  
                          if(subject.Length>26)          
                          {      
                                              subject=subject.Substring(0,25)+     "...     ";      
                          }      
                        return   subject;      
  }  
   
  前台  
  <A   href='Preview.aspx?NewsID=<%#   DataBinder.Eval(Container.DataItem,"NewsId")   %>'   target=_blank>   <%#   Format(Container.DataItem,"wjmc")   %>   </A>Top

3 楼ChengKing((.net: http://blog.csdn.net/ChengKing ))回复于 2006-01-10 08:28:49 得分 5

参考:  
  1.前台代码  
      <asp:TemplateColumn>  
  <ItemStyle   HorizontalAlign="Left"   Wrap="true"></ItemStyle>  
  <ItemTemplate>  
  <asp:Label   runat="server"   Text='<%#   GetDemand(DataBinder.Eval(Container,   "DataItem.demand").ToString())%>'>  
  </asp:Label>  
  </ItemTemplate>  
    </asp:TemplateColumn>  
  2.后台代码  
  protected   string   GetDemand(string   strDemand)  
  {  
  string   subDemand   =   strDemand;  
   
   
  if(subDemand.Length   >   26)            
  {  
  subDemand   =   subDemand.Substring(0,25)   +   "...";  
  }  
  string   titleDemand   =   strDemand.Replace("<br>","\r\n").Replace("&nbsp;","   ");  
  string   HtmlTitle   =   "<A   title=\""   +   titleDemand   +   "\"   >"   +   subDemand   +   "</A>";  
   
  return   HtmlTitle;    
  }Top

4 楼njbaige(白鸽)回复于 2006-01-10 08:43:48 得分 0

可以手动在普通列中添加   <a   href="..">+原来的值+</a>  
  绑定事件里面写就好啦~Top

5 楼hl_ws(小数点)回复于 2006-01-10 08:56:07 得分 0

按楼上的操作简单啊Top

相关问题

  • datagrid超链接列变色问题
  • 如何在DataGrid里动态插入一列超级链接列
  • 如何在DataGrid控件中添加图片列和超链接列
  • 如何给DataGrid中的一列加上超链接?
  • 关于在datagrid中用超链接列传多个参数
  • DataGrid中怎样获得超级链接列中的文本值?
  • 如何获取datagrid中,超级链接列的url参数?
  • 怎样才能在DataGrid编辑超级链接列的内容
  • 怎样给DataGrid的超级链接列添加双击事件?
  • 怎样把datagrid的一列变为超链接

关键词

  • subject
  • item

得分解答快速导航

  • 帖主:shiyi2005
  • net_lover
  • singlepine
  • ChengKing

相关链接

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

广告也精彩

反馈

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