IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Intervalle de temps entre deux clics et date.ToString


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut Intervalle de temps entre deux clics et date.ToString
    Bonjour a tous,

    je chercher a recuperer l'intervalle de temps en mm:ss entre deux clics, sur deux boutons différents, au sein d'un meme page.
    Le premier clic affiche des données et le second y met fin, il ya donc rechargement de la page.

    J'ai essayé avec des timespan, des StopWatch, etc. Mais il semble que le postback soit (encore) un problème

    merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    En fait, ce qui me pose réellement problème après réflexion, c'est le simple transtypage de la date en string en vue d'affichage dans un TextBox.
    Je recupere bien la duree, mais n'arrive pas a la formater.

    Pour etre plus précis:
    j'ai une heureDebut: datetime
    une heureFin : datetime
    et une duree : Timespan

    je parviens bien a faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    heureFin.substract(heureDebut)
    mais impossible d'affecter le resultat a ma variable duree

    je parviens bien a faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    dim format a string = hh:mm:ss
    heureFin.ToString(format)
    heureDebut.ToString(format)
    Mais je ne parviens pas a stocker ma durée dans une variable que je puisse ensuite afficher dans un textbox ou n'importe quel controle qui attend une string.

    Merci pour votre aide

    Merci

  3. #3
    Membre chevronné
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    400
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 400
    Par défaut
    Bonsoir

    Vu que j'ai pas trop compris ton problème, je me suis fais un petit exemple.
    Voilà le code :
    Aspx
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ...
        <div>
            <asp:TextBox ID="TextBoxDateDebut" runat="server"></asp:TextBox>
            <asp:TextBox ID="TextBoxDateFin" runat="server"></asp:TextBox>
            <asp:TextBox ID="TextBoxDuree" runat="server"></asp:TextBox>
            <asp:Button ID="ButtonCalcul" runat="server" Text="Calcul" />
        </div>
    ...
    Code Behind
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    ...
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            If Not Me.IsPostBack Then
                TextBoxDateDebut.Text = Now.ToString()
            End If
        End Sub
     
        Protected Sub ButtonCalcul_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonCalcul.Click
            Dim oDateDebut As Date = CDate(TextBoxDateDebut.Text)
            Dim oDateFin As Date = Now
            TextBoxDateFin.Text = oDateFin.ToString()
            Dim oDuree As TimeSpan = TimeSpan.Zero
            oDuree = oDateFin.Subtract(oDateDebut)
            TextBoxDuree.Text = oDuree.ToString
        End Sub
    ...
    Tu peux t'inspirer de ça si ça correspond bien a ta question .

    Bonne soirée

  4. #4
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Merci pour ta réponse.

    Tu as bien compris ma question, désolé si je n'etais pas clair.
    Ce que j'avais fait ressemble à ce que tu me proposes.
    Mais cela ne fonctionne pas.
    La variable TimeSpan oDuree me renvoie l'heure courante malgré mon opération:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    oDuree=Ofin.Substract(Odebut)
    Cela peut il venir du fait que j'initialise oDebut au clic sur un bouton "démarrer" avec postback puis que j'initialise oFin au clic sur un deuxieme bouton "arreter" avec encore rechargement de page ?

    Si oui, dans le mesure ou je dois utiliser le postback pour afficher de nouvelles données au clic sur les deux bouton, quel type de methode utiliser pour que oDuree soit correct?

    merci d'avance

  5. #5
    Membre chevronné
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2006
    Messages
    400
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 400
    Par défaut
    Bonjour

    Quelques question qui peuvent résoudre ton problème :
    oDebut est déclarée comment? Est-ce un variable globale?

    Si c'est le cas, alors au premier Postback, la variable est réinitialisée (à 0 )
    du coup DateFin=Now() et DateFin - 0=Now?

    Tu peux stocker Datedebut en Session ou dans le Viewstate, ou dans un HiddenField.

    Tiens nous au courant.

    A bientôt

  6. #6
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Mes trois variables sont déclarées en Global.
    Et tu viens de me donner l'illumination. Pourquoi n'ai-je pas pensé au stockage en session???

    Je fais ça de suite, et met ca en Résolu sous peu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. creer un intervalle de temps entre deux dates en vb
    Par sikapro dans le forum VB.NET
    Réponses: 2
    Dernier message: 30/04/2014, 14h04
  2. Réponses: 3
    Dernier message: 09/09/2010, 17h47
  3. Requête pour calculer le temps entre deux dates
    Par Badboy62cfp dans le forum Access
    Réponses: 2
    Dernier message: 19/05/2006, 13h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo