我想在gridview中把行中多余的字符用省略号代替怎么办? 不要分行显示,大于列宽的就用在后面加省略号代替 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string s = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";if (s.Length > 23)s = s.SubString(0, 20) + "..."; <asp:GridView ID="gv" runat="server"> <Columns> <asp:ColumnTemplate> <asp:Label ID="Label1" runat="server" Text='<%#Eval("NewsTitle").ToString().Length>20?Eval("NewsTitle").ToString().SubString(0,20)+"...":Eval("NewsTitle").ToString()%>' </asp:ColumnTemplate> </Columns></asp:GridView> 你可以写个方法,方法的作用是截取需要显示的字符串的长度,大致的是这样的,里面的各种验证,你可以自己写!然后你在前台绑定时这样调用一下就行了!<%#CutString(Eval("description"),10,"...") %> /// <param name="str">要截取的字符串</param> /// <param name="len">要显示的字符串长度</param> /// <param name="chara">超出的话,要显示的字符</param> public string CutString(string str, int len, string chara) { return str.Substring(0, len) + chara; } “/Web”应用程序中的服务器错误。--------------------------------------------------------------------------------索引和长度必须引用该字符串内的位置。参数名: length 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。参数名: length源错误: 行 59: public string CutString(string str, string chara)行 60: {行 61: return str.Substring(0, 10) + chara;行 62: }行 63: 源文件: e:\Study\ASP.NET\第四章\MyBookShop\Web\Admin\ListBooksByCategory.aspx.cs 行: 61 堆栈跟踪: [ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。参数名: length] System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy) +2848263 System.String.Substring(Int32 startIndex, Int32 length) +11 Admin_ListBookByCategory.CutString(String str, String chara) in e:\Study\ASP.NET\第四章\MyBookShop\Web\Admin\ListBooksByCategory.aspx.cs:61 ASP.admin_listbooksbycategory_aspx.__DataBinding__control19(Object sender, EventArgs e) in e:\Study\ASP.NET\第四章\MyBookShop\Web\Admin\ListBooksByCategory.aspx:30 System.Web.UI.Control.OnDataBinding(EventArgs e) +80 System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +198 System.Web.UI.Control.DataBind() +12 System.Web.UI.Control.DataBindChildren() +212 System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +208 System.Web.UI.Control.DataBind() +12 System.Web.UI.Control.DataBindChildren() +212 System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +208 System.Web.UI.Control.DataBind() +12 System.Web.UI.WebControls.GridView.CreateRow(Int32 rowIndex, Int32 dataSourceIndex, DataControlRowType rowType, DataControlRowState rowState, Boolean dataBind, Object dataItem, DataControlField[] fields, TableRowCollection rows, PagedDataSource pagedDataSource) +221 System.Web.UI.WebControls.GridView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) +3001 System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) +59 System.Web.UI.WebControls.GridView.PerformDataBinding(IEnumerable data) +12 System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) +101 System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +25 System.Web.UI.WebControls.DataBoundControl.PerformSelect() +140 System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +68 System.Web.UI.WebControls.GridView.DataBind() +4 System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +61 System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() +67 System.Web.UI.Control.EnsureChildControls() +97 System.Web.UI.Control.PreRenderRecursiveInternal() +50 System.Web.UI.Control.PreRenderRecursiveInternal() +171 System.Web.UI.Control.PreRenderRecursiveInternal() +171 System.Web.UI.Control.PreRenderRecursiveInternal() +171 System.Web.UI.Control.PreRenderRecursiveInternal() +171 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5731 --------------------------------------------------------------------------------版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42 checkbox不用JS,如何实现单选 在cs有一个http的rar包,如何弹出下载提示 求救!asp问题 程序运行不稳定出现同样的问题 字符“~”是什么含义? 一个ASP.NET的简单问题 (超菜问题).net中数组下限是什么意思啊?谢谢好心人~ 。net 如何知道页面是否改变?有点难度 DataGrid1_SelectedIndexChanged怎么触发不了呢?奇怪 一个简单的Cache依赖问题 wf复合活动可以用CAG吗?
if (s.Length > 23)
s = s.SubString(0, 20) + "...";
<Columns>
<asp:ColumnTemplate>
<asp:Label ID="Label1" runat="server" Text='<%#Eval("NewsTitle").ToString().Length>20?Eval("NewsTitle").ToString().SubString(0,20)+"...":Eval("NewsTitle").ToString()%>'
</asp:ColumnTemplate>
</Columns>
</asp:GridView>
/// <param name="len">要显示的字符串长度</param>
/// <param name="chara">超出的话,要显示的字符</param>
public string CutString(string str, int len, string chara)
{
return str.Substring(0, len) + chara;
}
--------------------------------------------------------------------------------索引和长度必须引用该字符串内的位置。
参数名: length
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。
参数名: length源错误:
行 59: public string CutString(string str, string chara)
行 60: {
行 61: return str.Substring(0, 10) + chara;
行 62: }
行 63:
源文件: e:\Study\ASP.NET\第四章\MyBookShop\Web\Admin\ListBooksByCategory.aspx.cs 行: 61 堆栈跟踪:
[ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。
参数名: length]
System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy) +2848263
System.String.Substring(Int32 startIndex, Int32 length) +11
Admin_ListBookByCategory.CutString(String str, String chara) in e:\Study\ASP.NET\第四章\MyBookShop\Web\Admin\ListBooksByCategory.aspx.cs:61
ASP.admin_listbooksbycategory_aspx.__DataBinding__control19(Object sender, EventArgs e) in e:\Study\ASP.NET\第四章\MyBookShop\Web\Admin\ListBooksByCategory.aspx:30
System.Web.UI.Control.OnDataBinding(EventArgs e) +80
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +198
System.Web.UI.Control.DataBind() +12
System.Web.UI.Control.DataBindChildren() +212
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +208
System.Web.UI.Control.DataBind() +12
System.Web.UI.Control.DataBindChildren() +212
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +208
System.Web.UI.Control.DataBind() +12
System.Web.UI.WebControls.GridView.CreateRow(Int32 rowIndex, Int32 dataSourceIndex, DataControlRowType rowType, DataControlRowState rowState, Boolean dataBind, Object dataItem, DataControlField[] fields, TableRowCollection rows, PagedDataSource pagedDataSource) +221
System.Web.UI.WebControls.GridView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) +3001
System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) +59
System.Web.UI.WebControls.GridView.PerformDataBinding(IEnumerable data) +12
System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) +101
System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +25
System.Web.UI.WebControls.DataBoundControl.PerformSelect() +140
System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +68
System.Web.UI.WebControls.GridView.DataBind() +4
System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +61
System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() +67
System.Web.UI.Control.EnsureChildControls() +97
System.Web.UI.Control.PreRenderRecursiveInternal() +50
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5731
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42