这个是用IE打开的,长度就有问题了这个是用腾讯TT打开的,就没问题请教大家该怎么改代码代码如下
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width="92%" ShowHeader="False" onrowdatabound="gvTopTradeInfo_RowDataBound">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <li>
                    <asp:HyperLink ID="HyperLink1" runat="server" Text='<%# Eval("BT_Name_ZH")%>'></asp:HyperLink>
                    <%--<span><asp:Label ID="Label2" runat="server" Text='<%# Eval("ReadCount") %>'></asp:Label></span>--%>
                </li>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField DataField="bt_Id" HeaderText="bt_Id" >
            <ControlStyle CssClass="hiddenField" />
            <FooterStyle CssClass="hiddenField" />
            <HeaderStyle CssClass="hiddenField" />
            <ItemStyle CssClass="hiddenField" />
        </asp:BoundField>
        <asp:BoundField DataField="BT_InfoType" HeaderText="BT_InfoType" >
            <ControlStyle CssClass="hiddenField" />
            <FooterStyle CssClass="hiddenField" />
            <HeaderStyle CssClass="hiddenField" />
            <ItemStyle CssClass="hiddenField" />
        </asp:BoundField>
    </Columns>
</asp:GridView>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.cs 代码public partial class controls_postCHM : DCControlBase
{    private int m_typeid = -1;    public int typeID
    {
        get { return m_typeid; }
        set { m_typeid = value; }
    }    private string order_str = " and bt_isUsed = 1 order by readCount desc ";    protected void Page_Load(object sender, EventArgs e)
    {
        if (m_typeid == -1)
        {
            order_str = " and bt_isUsed = 1 order by readCount desc "; 
        }
        else
            order_str = " and bt_isUsed = 1 order by BT_CreateTime desc"; //for searchdetail.aspx        if (!IsPostBack)
        {
            binding();
        }
    }    private void binding()
    {
        BRBT_TradeInfo brTrade = new BRBT_TradeInfo();
        DsBT_TradeInfo dsTrade = brTrade.GetTopByViewName("V_TradeDetail", 10, order_str);        GridView1.DataSource = dsTrade;
        GridView1.DataBind();
    }    protected void gvTopTradeInfo_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow || e.Row.RowType == DataControlRowType.EmptyDataRow)
        {
            string hf = e.Row.Cells[2].Text;// (e.Row.Cells[0].FindControl("HiddenField2") as HiddenField);
            HyperLink hl = (e.Row.Cells[0].FindControl("HyperLink1") as HyperLink);
            string btid = e.Row.Cells[1].Text;// (e.Row.Cells[0].FindControl("HiddenField1") as HiddenField);
            switch (hf)
            {
                case "1":
                    //hl.NavigateUrl = "../display/productSale.aspx?id=" + btid;
                    hl.NavigateUrl = "../display/productSale" + lang + ".aspx?id=" + btid;
                    break;
                case "2":
                    hl.NavigateUrl = "../display/productNews" + lang + ".aspx?id=" + btid;
                    break;
                case "7":
                    hl.NavigateUrl = "../display/productNews" + lang + ".aspx?id=" + btid;
                    break;
 
            }
        }
    }

解决方案 »

  1.   

    <%#Server.HtmlDecode(DataBinder.Eval(Container.DataItem, "ReadCount").ToString().
    Length > 15 ? DataBinder.Eval(Container.DataItem, "ReadCount").ToString().Substring(0, 15) : 
    DataBinder.Eval(Container.DataItem, "ReadCount").ToString()).ToString()%><
      

  2.   

    #region 根据需要对字符串进行指定长度的截取
            /// <summary>
            /// 根据需要对字符串进行指定长度的截取,被截去的部分使用“...”代替
            /// </summary>
            /// <param name="objString">指定需要截取的字符串。</param>
            /// <param name="length">指定需要截取的长度。</param>
            /// <returns></returns>
            public string CutString(string objString, int length)
            {
                string newString = "";
                if (objString != "")
                {
                    if ((objString.Length) > length)
                    {
                        newString = objString.Substring(0, length) + "…";
                    }
                    else
                    {
                        newString = objString;
                    }
                }
                return newString;
            }
            #endregion<asp:HyperLink ID="HyperLink1" runat="server" Text='<%# CutString(Eval("BT_Name_ZH").ToString(),13) %>'></asp:HyperLink>
      

  3.   


     #region ### 截取字符串(如果字符长度超过特定长度就截取+...)
        /// <summary>
        /// 截取字符串(如果字符长度超过特定长度就截取+...)
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static string GetSubString(string str, int leng)
        {
            if (str != null && !str.Equals(""))
            {
                if (str.Length > leng)
                {
                    return str.Substring(0, leng) + "...";
                }
                else
                {
                    return str;
                }
            }
            else
            {
                return str;
            }    }
        #endregion
      

  4.   

    #region ### 截取字符串(如果字符长度超过特定长度就截取+...)
        /// <summary>
        /// 截取字符串(如果字符长度超过特定长度就截取+...)
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static string GetSubString(string str, int leng)
        {
            if (str != null && !str.Equals(""))
            {
                if (str.Length > leng)
                {
                    return str.Substring(0, leng) + "...";
                }
                else
                {
                    return str;
                }
            }
            else
            {
                return str;
            }    }
        #endregion
    在ASPX页面里<%#GetSubString(Eval(Container.DataItem, "ReadCount"),15)%>