现在的位置: 首页 > 综合 > 正文

UpdatePanel中使用Timer控件实现图片轮流播放

2013年10月05日 ⁄ 综合 ⁄ 共 1170字 ⁄ 字号 评论关闭

!!!存储页面上的变量,在异步回传中,可以用ViewState

页面关键代码:

<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
   
    </div>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <asp:Timer ID="Timer1" runat="server" Interval="1000" OnTick="Timer1_Tick">
                </asp:Timer>
                <asp:Image ID="Image1" runat="server" ImageUrl="~/image/1.jpg" />
            </ContentTemplate>
        </asp:UpdatePanel>
    </form>
</body>

后台代码:

public partial class Timer : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack )
        {
            //设置页面上的变量 
            ViewState["number"] = 1; 
        }
       
        LiteralControl li = new LiteralControl(DateTime.Now.ToString());
        this.UpdatePanel1.ContentTemplateContainer.Controls.Add(li);
    }
    protected void Timer1_Tick(object sender, EventArgs e)
    {
        ViewState["number"] = Convert.ToInt32(ViewState["number"]) + 1;
        Image1.ImageUrl = string.Format("~/image/{0}.jpg", ViewState["number"]);
        if (Convert.ToInt32(ViewState["number"]) == 12)
        {
            ViewState["number"] = 1;
        }
    }
}

抱歉!评论已关闭.