1

以下のコードを使用して、VS2010のAJAXツールを介して60秒ごとにページを自動更新します。完璧に動作します。

<asp:MultiView ID="MultiView1" runat="server">
  <asp:View ID="View1" runat="server">
    <asp:UpdatePanel ID="UpdatePanel1" runat="server" ViewStateMode="Enabled" UpdateMode="Conditional">
      <ContentTemplate>
         ASP.NET/HTML Code
             <p>
             <asp:Button ID="Button2" runat="server" Text="Click here" OnClick="Button2_Click" /> to disable the pages automatic refresh.</p>
      </ContentTemplate>
      <Triggers>
         <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
      </Triggers>
    </asp:UpdatePanel>
    <asp:Timer ID="Timer1" runat="server" Interval="60000">
    </asp:Timer>
  </asp:View>
  <asp:View ID="View2" runat="server">
  etc.
</asp:MultiView>

自動更新をキャンセルするためのボタンをasp.netページに含めたいです。

以下を含めてみましたが、ボタンをクリックしてもうまくいきませんでした。以下は、ボタンのOnClickイベントのコードビハインドです。asp.netコードは上記のコードに含まれています。

protected void Button2_Click(object sender, EventArgs e)
{
     Timer1.Interval = 0;
}

どこが間違っているのですか?これはこれを行う方法でもありますか、それともユーザーが自動ページ更新をキャンセルできるようにするために別のルートに行く必要がありますか?

4

1 に答える 1

1

PeterJのおかげで解決策が見つかりました。コードを変更しましたが、クリックしてからページが更新されません。この問題は、ボタンの OnClick イベントのコード ビハインドにありました。私が持っていた:

Timer1.Interval = 0;

私が持っていたはずのとき:

Timer1.Enabled = false;
于 2012-12-14T06:03:19.340 に答える