转发器 ItemDataBound NullReferenceException
Repeater ItemDataBound NullReferenceException
当我的数据中有一个空值时,我得到一个 NullReferenceException
。此数据中将有许多 null 和空值,我想突出显示它们。 col2 是 td
的 id
<td id="col2"><asp:Label ID="ESubject" Text='<%# (Eval("EventSubject") == null) ? "null" : Eval("EventSubject") %>' runat="server" /></td>
protected void myRepeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
var varSubject = e.Item.FindControl("ESubject");
var adjSubject = varSubject.ToString();
HtmlTableCell td = (HtmlTableCell)e.Item.FindControl("col2");
if (adjSubject == "null")
{
td.BgColor = "yellow";
}
}
}
如果要从代码隐藏访问常规 html 控件,则需要添加 runat="server"
。
<td id="col2" runat="server">
...
</td>
如果您想查找子控件,我们使用 .FindControl
。
由于 HtmlTableCell
是标签控件的 直接 父级,您需要使用 .Parent
.
protected void myRepeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
var varSubject = e.Item.FindControl("ESubject");
var adjSubject = varSubject.Parent as HtmlTableCell;
if (adjSubject != null)
{
adjSubject.BgColor = "yellow";
}
}
}
当我的数据中有一个空值时,我得到一个 NullReferenceException
。此数据中将有许多 null 和空值,我想突出显示它们。 col2 是 td
<td id="col2"><asp:Label ID="ESubject" Text='<%# (Eval("EventSubject") == null) ? "null" : Eval("EventSubject") %>' runat="server" /></td>
protected void myRepeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
var varSubject = e.Item.FindControl("ESubject");
var adjSubject = varSubject.ToString();
HtmlTableCell td = (HtmlTableCell)e.Item.FindControl("col2");
if (adjSubject == "null")
{
td.BgColor = "yellow";
}
}
}
如果要从代码隐藏访问常规 html 控件,则需要添加 runat="server"
。
<td id="col2" runat="server">
...
</td>
如果您想查找子控件,我们使用 .FindControl
。
由于 HtmlTableCell
是标签控件的 直接 父级,您需要使用 .Parent
.
protected void myRepeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
var varSubject = e.Item.FindControl("ESubject");
var adjSubject = varSubject.Parent as HtmlTableCell;
if (adjSubject != null)
{
adjSubject.BgColor = "yellow";
}
}
}