DataBinder.Eval的简单问题,解决就给分!!!!!!!!!
前台用了DataList
<asp:DataList ID= "Lib " Runat= "server ">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Title ") %>
</ItemTemplate>
</asp:DataList>
<%# DataBinder.Eval(Container.DataItem, "Title ") %> 的内容我只想要10个汉字,两个字母算一个汉字,如果不在后台处理,只在前台怎么弄,谢谢大家了!!!
[解决办法]
原理是判断中英文的字符码值,中文算2个字符,英文1个。
public string CutString(string str, int length)
{
string delsqace = str.Trim();
int i = 0, j = 0;
foreach (char chr in delsqace)
{
if ((int)chr > 127)
{
i += 2;
}
else
{
i++;
}
if (i > length)
{
delsqace = delsqace.Substring(0, j) + "... ";
break;
}
j++;
}
return delsqace;
}