在PreRender之前可能未注册脚本控件。使用计时器控制时

时间:2014-06-29 22:40:13

标签: asp.net vb.net timer

我是ASP.net(vb)的新手,我正在使用计时器控件。我再次研究了这个问题的答案并按照说法(重载预渲染方法)完成。我的问题是我有一个母版页,我已经添加了一个计时器控件,为了更新倒计时字段,在进入网站索引页面时,我不断收到错误:“在PreRender之前可能没有注册脚本控件。”该计时器在索引页面以外的其他页面上运行良好。

<form id="fMain" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
        <asp:Timer ID="timer1" runat="server" Interval="1000" OnTick="timer1_tick"></asp:Timer></div>
     <div>
 <asp:UpdatePanel id="updPnl" runat="server" UpdateMode="Conditional">
     <ContentTemplate>
      <asp:Literal ID="litTimer" runat="server"></asp:Literal>
                        </ContentTemplate>
                        <Triggers>
                            <asp:AsyncPostBackTrigger ControlID="timer1" EventName ="tick" />
                         </Triggers>
                    </asp:UpdatePanel>
                </div>

Codebehind:

Sub timer1_tick() Handles timer1.Tick
       ltr1.text = "test"

End Sub`

提前谢谢你。

1 个答案:

答案 0 :(得分:1)

这是因为您正在使用Telerik控件并覆盖了OnPreRender方法。

您需要在此方法中添加以下内容:

protected override void OnPreRender(EventArgs e)  
{  
    base.OnPreRender(e);