这是我在前台页面要显示的:
<td><%# DataBinder.Eval(Container.DataItem,"ID") %></td>
现在我要根据ID的值的正负,把ID显示成不同的颜色,
所以我加了如下逻辑判断:
if (int.Parse(DataBinder.Eval(this.Repeater1.Items[0], "ID").ToString()) >0)
报:未将对象引用设置到对象的实例
求名位大虾帮助。
这样子写一定是不可以的,不过你可以选择一个折中的办法,在aspx.cs中定义一格方法比如
public string ChangeColor(string val)
{
if(val!=""){
if(int.Parse(val)>0)
return "<font color='blue'>"+val+"</font>";
else
return "<font color='red'>"+val+"</font>";
}
}
然后页面上你可以<td><%# ChangeColor(DataBinder.Eval(Container.DataItem,"ID") )%></td>
由于直接敲的代码 请不要复制粘贴
<%# Convert.ToInt32(DataBinder.Eval(this.Repeater1.Items[0], "ID")) > 0 ? "Red" : "Blue" %>
数据绑定一定要用<%# %>