如何截取标题的显示长度
<%#DataBinder.Eval(Container.DataItem, "title ")%> 我想判断一下如果title的长度超过20就显示成标题的前15个字符然后加上 "... " 如果不超出就原样显示标题,,,该如何写代码呢?谢谢
------解决方案-------------------- <asp:TemplateField>
<HeaderTemplate>
<span> 文件名称 </span>
</HeaderTemplate>
<HeaderStyle Width= "120px " HorizontalAlign= "Center " />
<ItemStyle HorizontalAlign= "Left " />
<ItemTemplate>
<div class= " " title= ' <%# DataBinder.Eval(Container.DataItem, "FileName ")%> ' style= "overflow:hidden; text-overflow:ellipsis; white-space:nowrap; PADDING-TOP: 1px; PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; width:160px; ">
<%# DataBinder.Eval(Container.DataItem, "FileName ")%>
</div>
</ItemTemplate>
</asp:TemplateField>
这样可以
------解决方案-------------------- <%#retsting(DataBinder.Eval(Container.DataItem, "title "))%>
function retstring(byval s as string) as string
if len(s)> 20 then
return left(s,15)
else
return s
end if
end function
------解决方案--------------------public static string FixLenB(string strContent,int sLen)
{
//超过规定长度加上“…”
byte[] s1 = System.Text.Encoding.Default.GetBytes(strContent);
int tLen=sLen+2; //规定长度加上“…”的总长度
//若转换为字节的字符串的长度小于指定的长度加上“...”的总长度则执行
if(s1.Length <=tLen)
{
return strContent;
}
else
{
strContent=System.Text.Encoding.Default.GetString(s1,0,sLen)+ "… ";;
return strContent;
}
}
给你个方法
------解决方案--------------------public string MyLeftFunction(string str, int Int)
{
if (str.Length > = Int)
{
str = str.Substring(0,Int);
return str;
}
else
{
return str;
}
}
------解决方案--------------------在DataGrid1_ItemDataBound中写
e.Item.Cells[6].ToolTip=e.Item.Cells[6].Text.ToString().Trim();
e.Item.Cells[6].Text=e.Item.Cells[6].Text.Length> 15?e.Item.Cells[6].Text.ToString().Substring(0,15).ToString():e.Item.Cells[6].Text.ToString().Trim();
------解决方案--------------------可以使用lovehongyun(晒太阳的猫) 的方法。(不过要改一改)
<%# FixLenB(DataBinder.Eval(Container.DataItem, "title "),20)%>
------解决方案-------------------- <%#MyStbstring(DataBinder.Eval(Container.DataItem, "title ").ToString(),10)%>
-------.cs-----------
protected string MySubstring(string str, int length)
{
if (str.Length <= length)
{
return str;
}
else
{
return " <font title= " + str + "> " + str.Substring(0, length) + "... </font> ";