解析Gridview和DataList中如何截取标题字符长度_.Net教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:浅谈asp.net程序优化技巧
1.数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源。ASP.NET中提供了连接池(ConnectionPool)改善打开和关闭数据库对性能的影响。系

代码如下:
<asp:HyperLink ID="hltitle" runat="server" Width="340px" Text=’<%# Eval("NewsName").ToString().Length>25?Eval("NewsName").ToString().Substring(0,25)+"...":Eval("NewsName") %>’  NavigateUrl=’<%#"NewsShow2.aspx?NewsID="+DataBinder.Eval(Container.DataItem,"NewsID")%>’>HyperLink</asp:HyperLink>  

注意那个三元运算符 “?:”意思就是如果长度大于25,就截取前25个,如果小于或等于25就全部取出。
如果不加这个运算符的话,假如字符长度没有所想要截取的长度那么长,就会报错。
在Gridview中要注意,要插入的项是TemplateField才能做截取,不能是单纯的HyperLink。
<asp:TemplateField HeaderText="新闻标题">   
    <ItemTemplate>   
       
        <%# (Eval("NewsName").ToString().Length>8?Eval("NewsName").ToString().Substring(0,8):Eval("NewsName").ToString()) + "…" %>                   
       
    </ItemTemplate>   
</asp:TemplateField>  

还有一个必须要注意的,在网上,我注意到很多人都写成了ToString().SubString(0,8)或者Tostring().Substring()之类的代码,要注意C#的大小写敏感,如果函数写错了,就会在运行时报错。

分享:如何在GridView数据源为空时也显示表头
首先,需要GridView的AutoGenerateColumn属性为false。 进行正常的绑定后,添加页面事件 this.PreRender+=OnPagePreRender; 这个事件只要比绑定晚就可以,不必非得是PreRender。 然后判断如果数据源无数据,就执行以下代码 if (gridView.DataSource is DataTa

来源:模板无忧//所属分类:.Net教程/更新时间:2010-01-30
相关.Net教程