读书人

gridview列自定义邦定数据的异常如何捕

发布时间: 2012-01-14 20:02:35 作者: rapoo

gridview列自定义邦定数据的错误怎么捕获啊
<Columns>
<asp:BoundField DataField= "xid " HeaderText= "xid " ReadOnly= "True " SortExpression= "xid " />
<asp:BoundField DataField= "xname " HeaderText= "xname " SortExpression= "xname " />
<asp:BoundField DataField= "xsex " HeaderText= "xsex " SortExpression= "xsex " />
<asp:BoundField DataField= "xxf " HeaderText= "xxf " SortExpression= "xxf " />
<asp:TemplateField HeaderText= "xbz " SortExpression= "xbz ">
<EditItemTemplate>
<asp:TextBox ID= "TextBox1 " runat= "server " Text= ' <%# Bind( "xbz ") %> '> </asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID= "Label1 " runat= "server " Text= ' <%# (Eval( "xbz ")).ToString().Substring(0,5) %> '> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:HyperLinkField DataNavigateUrlFields= "xname " DataNavigateUrlFormatString= "news.aspx?fields={0}&field1={0} "
DataTextField= "xname " HeaderText= "links " />
</Columns>

这个是一个gridview 的源文件视图代码。
中间lable1 是我模板化了后用自定义数据 substring(0,5)而问题是。当字段里的字符少于5的时候,系统就会报错,我应该怎么样来扑抓错误啊。 这又不是在cs文件里。又不能用try。。。catch 啊。。。郁闷了。

------解决方案--------------------


(Eval( "xbz ")).ToString().Lenth> 5: (Eval( "xbz ")).ToString().Substring(0,5)?(Eval( "xbz ")).ToString()
[解决办法]
在ASPX.CS文件中这样一个方法
public string GetXSZString(object v)
{
string str = v.toString();
if(str.Length <=5)
return str;
else
return str.SubString(0,5);
}


//前台调 用
<asp:Label ID= "Label1 " runat= "server " Text= ' <%# GetXSZString(Eval( "xbz "))%> '> </asp:Label>

读书人网 >asp.net

热点推荐