日期:2014-05-17  浏览次数:20422 次

ASP.NET Repeater控件 的一个高深问题?
请教大家一个问题?repeater显示信息标题问题?当标题长度过长,当标题大于20个字符之后 用省略号表示?

例如: 我是来自中国广东..... 这个怎么实现?


------解决方案--------------------
<%# attr.length>20?attr.substring(0,20)+"....":attr %>
------解决方案--------------------
先在后台写一个方法实现这个功能
public string GetSubString(string str)
{
return str.Length <= 20? str : (str.SubString(0,20) + "...");
}
然后在前台绑定
Text='<%# GetSubString(Eval("FieldName")) %>'
------解决方案--------------------
C# code

<%# Eval("field").ToString().Length>20?Eval("field").ToString().SubString(0,20)+"...":Eval("field").ToString() %>

------解决方案--------------------
HTML code
    <form id="form1" runat="server">
    <div>
        <asp:Repeater ID="rptList" runat="server" 
            onitemdatabound="rptList_ItemDataBound">
            <ItemTemplate>
                <div><asp:Label ID="lblMessage" runat="server" Text='<%#Eval("Message") %>'></asp:Label></div>
            </ItemTemplate>
        </asp:Repeater>
    </div>
    </form>