datalist截取字符串问题
我在datalist中包含linkbutton按钮作为链接,我bind后怎么截取linkbutton的text值呢?以下是我的代码老是提示“索引和长度必须引用该字符串内的位置。参数名: length” 这个错误,代码如下:
protected void dlnews_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (((LinkButton)e.Item.Controls[0].FindControl("lbtntitle")).Text.Length>5)
{
((LinkButton)e.Item.Controls[0].FindControl("lbtntitle")).Text = ((LinkButton)e.Item.Controls[0].FindControl("lbtntitle")).Text.Substring(0, 5) + "...";
}
} --------------------编程问答-------------------- 检查你的
((LinkButton)e.Item.Controls[0].FindControl("lbtntitle")).Text
这个文本小于5 --------------------编程问答-------------------- if (((LinkButton)e.Item.Controls[0].FindControl("lbtntitle")).Text.Length>5)
检查下判断 --------------------编程问答-------------------- 要先判断字符串的长度,如果没有超过5的长度就不处理
/// <summary>
/// 截断长字符串
/// </summary>
/// <param name="str">原始字符串</param>
/// <param name="length">字符串保留长度</param>
/// <returns>处理后的字符串</returns>
public static string CutLongString(string str, int length)
{
if (str.Length <= length)
{
return str;
}
return str.Substring(0, length) + "...";
}
--------------------编程问答-------------------- LinkButton)e.Item.Controls[0].FindControl("lbtntitle")).Text
必须非null --------------------编程问答--------------------
最好是后台判断一下,要不就是后台在录入的时候,多加一个字段
专门存放这几个关键词的,到取的时候也不在进行截取了!!
--------------------编程问答-------------------- return str.Length > count ? str.Substring(0, count) : str; --------------------编程问答-------------------- 三元运算符 判断就完了 --------------------编程问答-------------------- --------------------编程问答--------------------
+1
判断length之前,再判断一下null --------------------编程问答-------------------- 如果只是做 链接的话,建议用 hyperlink
补充:.NET技术 , ASP.NET