Таймер Ajax: выполнить только 5 раз - PullRequest
1 голос
/ 09 января 2012

У меня есть управление таймером ajax. Он добавляет «+» к текстовому значению метки. Этот таймер должен работать только пять раз с интервалом «1000», т. Е. Должно быть доступно только пять «+». После этого lblPostbackType Должно быть обновлено с учетом. Как мне этого добиться?

public partial class _Default : System.Web.UI.Page
{
static int partialPostBackCount = 0;
protected void Page_Load(object sender, EventArgs e)
{
    if (IsPostBack)
    {
        if (ScriptManager.GetCurrent(this).IsInAsyncPostBack)
        {
           partialPostBackCount = partialPostBackCount + 1;
           lblPostbackType.Text = "Partial Postback:: " + partialPostBackCount.ToString();
        }
        else
        {
            lblPostbackType.Text = "Full Postback";
        }
    }

}
protected void Timer1_Tick(object sender, EventArgs e)
{
    Label1.Text = Label1.Text + "+";
}
}

А код конструктора

<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:Timer runat="server" ID="Timer1" Interval="1000" OnTick="Timer1_Tick" />

 <asp:Label runat="server" ID="lblPostbackType" >SAMPLE</asp:Label>

<asp:UpdatePanel runat="server" ID="TimePanel" UpdateMode="Conditional">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
    </Triggers>
    <ContentTemplate>
        <asp:Label runat="server" ID="Label1" />
    </ContentTemplate>
</asp:UpdatePanel>

</form>

Спасибо

1 Ответ

2 голосов
/ 09 января 2012

попробуйте

protected void Timer1_Tick(object sender, EventArgs e)
{


    if (partialPostBackCount > 5 )
        {
           lblPostbackType.Text = "Partial Postback:: " + 
                                   partialPostBackCount.ToString();
           //Timer1.Enabled = false; //if you don't want it to continue
        }
        else
        {
            partialPostBackCount = partialPostBackCount + 1;
            Label1.Text = Label1.Text + "+";
        }

}

* статические переменные не рекомендуются.

сохраняйте метод события Page_Load чистым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...