现在在做一个网站,要用到gridview
但是当显示较长的字数时候就自动换行显示了
有什么办法可以只显示定长数据
例如下面这样:
原:请您对您的言行负责,遵守中华人民共和
    国有关法律、法规,尊重网上道德
想实现:请您对您的言行负责,遵守...
谢谢!!

解决方案 »

  1.   

    还有就是2.0里面配置找回密码时候的邮件发送总是说
    invalid mail header
    也不知道是怎么回事啊
    郁闷
      

  2.   

    自己写一个函数,来处理,如;
    //StringInput为要显示的文字,StringLength为你要限制最多显示多少个字
    protected string getString(string StringInput,int StringLength)
    {
    if(StringInput==""||StringInput==null)
    {return "";}
    string tempTitle="";
    StringInput = StringInput.TrimEnd(null);
    if (StringInput.Length > StringLength)
    {tempTitle = StringInput.Substring(0,StringLength-3)+"..."; }
    else
    {tempTitle = StringInput;}
    return tempTitle; 
    }然后在gridview中使用此函数,如:
    <%# getString((string)DataBinder.Eval(Container.DataItem, "xh"),15) %>
      

  3.   

    <%# CutString(Eval("你的字段").ToString(), 30, true) %>
    页面上的绑定代码后台页面代码:
    #region CutString
    /// <summary>
    /// 字符长度控制 中文 英文识别!
    /// 注:一个汉字作为2个字符长度处理
    /// </summary>
    /// <param name="str">要进行切割的字符串</param>
    /// <param name="len">返回的长度(自动识别中英文)</param>
    /// <returns></returns>
    protected string CutString(string str, int len)
    {
    byte[] sarr = System.Text.Encoding.Default.GetBytes(str); if (sarr.Length > len)
    return System.Text.Encoding.Default.GetString(sarr, 0, len) + "...";
    else
    return str;
    } /// <summary>
    /// 字符长度控制 中文 英文识别!
    /// 注:一个汉字作为2个字符长度处理
    /// </summary>
    /// <param name="str">要进行切割的字符串</param>
    /// <param name="len">返回的长度(自动识别中英文)</param>
    /// <param name="isExt">是否输出...</param>
    /// <returns></returns>
    protected string CutString(string str, int len, bool isExt)
    {
    byte[] sarr = System.Text.Encoding.Default.GetBytes(str); if (sarr.Length > len)
    return System.Text.Encoding.Default.GetString(sarr, 0, len) + (isExt ? "..." : "");
    else
    return str;
    }
    #endregion
      

  4.   

    invalid mail header
    非法的邮件头...不知道~可能是邮件服务器没配置好吧...但‘找回密码’最好不要用,如果密码采用MD5加密,就不能被破译。
    还是使用‘密码提示问题’、‘答案’等,来‘重设密码’比较安全。
      

  5.   

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    string i = e.Row.Cells[2].Text;
                    if (i.Length > 2)
                    {
                        e.Row.Cells[2].Text = i.Substring(0, 2) + "...";
                    }
                
                }
    }