Hello,
I am using updatepanel within a user control (serves as my every page's menu) to create a count down session warning:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
Me.lblSessionRemaining.Text = "Session Remaining Time in Minutes: 30"
If Not ScriptManager1.IsInAsyncPostBack Then
Session("timeout") = DateTime.Now.AddMinutes(30).ToString() 'Session expires in 30 minutes
End If
End If
End Sub
Protected Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick
If Not Session("timeout") Is Nothing Then
If 0 > DateTime.Compare(DateTime.Now, DateTime.Parse(Session("timeout").ToString())) Then
lblSessionRemaining.Text = "Session Remaining Time in Minutes: " & Math.Floor(CType(Session("timeout"), DateTime).Subtract(DateTime.Now).TotalMinutes)
End If
End If
End Sub<asp:ScriptManager ID="ScriptManager1" EnablePartialRendering="true" runat="server"></asp:ScriptManager><table class="style1"><tr><td>
Logo Here</td><td>
User info<table class="style1"><tr><td>
User:<asp:Label ID="lblUsername" runat="server" Text=""></asp:Label></td></tr><tr><td>
User Department:<asp:Label ID="lblDeparment" runat="server" Text=""></asp:Label></td></tr> <tr><td>
Last Signon:<asp:Label ID="lblLastSignOn" runat="server" Text=""></asp:Label></td></tr><tr><td>
Last failed signon attempt:<asp:Label ID="lblLastFailedSignOn" runat="server" Text=""></asp:Label></td></tr></table></td><td><asp:UpdatePanel
ID="UpdatePanel1" runat="server" UpdateMode="Conditional"><ContentTemplate>
Session Remaining:<asp:Label ID="lblSessionRemaining" runat="server" Text=""></asp:Label></ContentTemplate><Triggers><asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" /></Triggers></asp:UpdatePanel></td><td><asp:Button ID="btnSignOff" runat="server" Text="Sign Off" /></td></tr></table><asp:Timer ID="Timer1" runat="server" Interval="1000"></asp:Timer>I followed Microsoft's
suggestion to use EnablePartialRendering="true" in <asp:ScriptManager definition