初用.NET,为了这个问题想了很久,直到一次一个同学到宿舍玩,给我一点提示-----转换成模板,顺利解决
在.cs中加入以下代码:
public string GetString(string str)
{
if (str.Length > 4)//缩写字串个数,比如"中国湖南省长沙市"----->"中国湖南"
{
str = str.Substring(0, 4);
str+="..."; //末尾加"..."
}
return str;
}
注意: 函数应用"public"
前台代码:
</asp:TemplateField>
<asp:TemplateField HeaderText="地址">
<ItemTemplate>
<asp:Label ID="Label2" runat="server" ToolTip='<%#DataBinder.Eval(Container.DataItem,"addr")%>' Text='<%#GetString((DataBinder.Eval(Container.DataItem,"addr")).ToString())%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
09年回头后来发现这一种低级的方法,更好的方法如下:
<td title='<%# Eval("supplier")%>'>
<%# Eval("supplier").ToString().Trim().Length > 8 ? Eval("supplier").ToString().Trim().Substring(0, 8) : Eval("supplier").ToString().Trim()%>
</td>