Announcement

Collapse
No announcement yet.

Zeitanzeige in Web-Form unter Vb.net

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Zeitanzeige in Web-Form unter Vb.net

    Hallo Newsgroup.

    Ich habe hier ein Programm, welches mir alle 5 Sek. die Uhrzeit aktualisieren soll. Der angepasste Code funzt unter vb.Net als Windows-Application einwandfrei, jedoch als Web-Application wird die Uhrzeit nicht auf der Wef-form angezeigt? Hier mein Code:

    Public Class WebForm1

    Inherits System.Web.UI.Page


    Private Shared t As New System.Timers.Timer(5000)

    #Region " Web Form Designer Generated Code "

    'This call is required by the Web Form Designer.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

    End Sub
    Protected WithEvents Button1 As System.Web.UI.WebControls.Button
    Protected WithEvents Label1 As System.Web.UI.WebControls.Label
    Protected WithEvents Button2 As System.Web.UI.WebControls.Button

    'NOTE: The following placeholder declaration is required by the Web Form Designer.
    'Do not delete or move it.
    Private designerPlaceholderDeclaration As System.Object

    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
    'CODEGEN: This method call is required by the Web Form Designer
    'Do not modify it using the code editor.
    InitializeComponent()
    End Sub

    #End Region
    Public Shared i As Integer = 0

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    AddHandler t.Elapsed, AddressOf TimerFired

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    t.Enabled = True

    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    t.Enabled = False

    End Sub
    Public Sub TimerFired(ByVal sender As Object, _
    ByVal e As System.Timers.ElapsedEventArgs)

    Label1.Text = e.SignalTime.ToString

    End Sub

    End Class

  • #2
    Hallo,
    hinter HTTP steckt ein zustandsloses Übertragungsverfahren. Der Anwender sieht im Browser erst dann eine neue Darstellung, wenn der Browser die Seite neu vom Server abfordert. Wenn dies <b>automatisch</b> erfolgen soll, sorgt das Einfügen der <b>Refresh</b>-Anweisung in den HTTP-Header dafür, dass die Seite im Browser alle x-Sekunden neu abgerufen und aktualisiert dargestellt wird. Im Load-Ergeignis des Web Forms muss nur die folgende Zeile untergebracht werden:
    <code>
    Response.AddHeader("Refresh", "5")
    </code>
    Zukünftig stehen mit den <i>ASP.NET 2.0 Script Callbacks</i> vielseitigere Möglichkeiten einsatzfertig zur Verfügung, wenn eine im Browser geladene Seite regelmässig bestimmte Infos beim Server nachfragen will, ohne ein vollständiges PostBack auslösen zu müssen

    Comment

    Working...
    X