shi*_*esh 4 c# asp.net data-binding
我绑定一些数据来控制,但是想要将特定字段的字符数限制为30个第一个字符.
如果有可能的话,我想在aspx页面上这样做.
我试过这个:
Text='<%# String.Format("{0}", Eval("Title")).Substring(0,30) %> '
Run Code Online (Sandbox Code Playgroud)
但得到了这个错误:
索引和长度必须指向字符串中的位置.参数名称:长度
正如Simon所说,当字符串少于30个字符时,您将遇到此错误.
您可以在页面中编写受保护的方法 -
protected string GetSubstring(string str, int length)
{
return str.Length > length ? str.Substring(0, length) : str;
}
Run Code Online (Sandbox Code Playgroud)
从这样的aspx代码中调用它 -
Text='<%# String.Format("{0}", GetSubstring(Eval("Title").ToString(), 30) %>'
Run Code Online (Sandbox Code Playgroud)