刚开始用ASP.NET 3.5 试着做一个网站,当用到GridView控件绑定以新闻信息的标题时,新闻的标题太长导致GridView换行。有没有一种DataFormatString格式能让每行只保留新闻标题的前十个字,后面剩下字符用省略号表示?各位大虾,谢谢了。

解决方案 »

  1.   

    新闻标题设置模板列 使用lable
    设置Text='<%#Eval("title").ToString().Length>10?Eval("title").ToString().substring(0,10)+"...":Eval("title").ToString()%>' ToolTip='Eval("title").ToString()'
      

  2.   


    string title = string.Empty;
    title = title.Length > 10 ? title.Substring(0, 10) + "..." : title;
      

  3.   

         #region  截短字串的函数,兼容中英文
            /// <summary>
            /// 截短字串的函数,兼容中英文
            /// </summary>
            /// <param name="mText">要加工的字串</param>
            /// <param name="byteCount">长度</param>
            /// <returns>被加工过的字串</returns>
            public static string Left(string mText, int byteCount)
            {
                if (byteCount < 1)
                    return mText;            if (System.Text.Encoding.Default.GetByteCount(mText) <= byteCount)
                {
                    return mText;
                }
                else
                {
                    byte[] txtBytes = System.Text.Encoding.Default.GetBytes(mText);
                    byte[] newBytes = new byte[byteCount - 4];                for (int i = 0; i < byteCount - 4; i++)
                    {
                        newBytes[i] = txtBytes[i];
                    }
                    string OutPut = System.Text.Encoding.Default.GetString(newBytes) + "...";
                    if (OutPut.EndsWith("?...") == true)
                    {
                        OutPut = OutPut.Substring(0, OutPut.Length - 4);
                        OutPut += "...";
                    }
                    return OutPut;
                }
            }
            #endregion
      

  4.   

    http://www.cnblogs.com/szp1118/archive/2010/07/31/1789148.html
      

  5.   

    Literal显示
    public static string CutStr(string str, int len)
      {
      return Encoding.Default.GetByteCount(str)> Len?str.Substring(0, len)+"...":str;
      }
      

  6.   

    在后台写一个:页面绑定的时候加上,向显示几个字就显示几个
    public string CutStr(object str,int count)
    {
        if(str.ToString().length>count)
        {
          return str.ToString().SubString(0,count)+"...";
        }
        else
        {
          return str.ToString();
        }
    }
    页面:
     Text='<%# CutStr(Eval("title")',10)