ASP文字不起作用

时间:2011-02-02 15:49:43

标签: asp.net literals

我试图让asp:literal工作,但显然我做错了,因为我得到了

  

对象引用未设置为实例   对象

错误

这是我的代码:

在ascx页面中:

<span class="span1">
   <asp:Literal ID="litFile" runat="server"></asp:Literal>
   <strong><asp:Literal ID="litFile2" runat="server"></asp:Literal></strong>
</span>

在ascx.cs页面中:

protected void _ItemBound(object sender, RepeaterItemEventArgs e)
{
    ((Literal)e.Item.FindControl("litFile")).Text = "a";
}

请问好吗?

C

3 个答案:

答案 0 :(得分:1)

我们需要更多的代码才能确定,但​​对我而言,文字实际上是在触发_ItemBound方法的转发器之外。否则,e.Item.FindControl应该能够找到它。确保litFile位于转发器控件中的ItemTemplate内,而不是页面中的其他位置。

答案 1 :(得分:0)

您不需要投射它,也不需要搜索它。

尝试:

litFile.Text = "a";

如果这不起作用,我们需要查看更多代码以了解正在发生的事情。

答案 2 :(得分:0)

由于你使用FindControl,我假设你在转发器或其他东西,所以试试这个

Literal litFile = repeaterName.FindControl("litFile");
litFile.text = "a";

我在VB中编码很抱歉,如果我的语法已关闭。