web-dev-qa-db-fra.com

comment changer la variable d'intervalle de temps en un type entier?

J'essaie de convertir une variable de durée en une variable entière en utilisant 'parse'. Je reçois une erreur qui dit:

L'exception de format n'a pas été gérée: la chaîne d'entrée n'était pas au format correct

C'est le code qui a:

   private void dateTimePicker4_ValueChanged(object sender, EventArgs e)
    {
        TimeSpan t = dateTimePicker4.Value.ToLocalTime() - dateTimePicker3.Value.ToLocalTime();
        int x = int.Parse(t.ToString());
        y = x;
    }

Mon objectif est d'afficher ce changement d'heure pour deux timepickers, dynamiquement dans une zone de texte, c'est-à-dire que la différence en minutes entre eux devrait s'afficher automatiquement dans une zone de texte.

18
Aman Mehrotra

la différence en minutes entre eux doit s'afficher automatiquement dans une zone de texte.

Au lieu d'analyser, utilisez TimeSpan.TotalMinutes propriété.

t.TotalMinutes;

La propriété est de type double, si vous avez juste besoin d'une partie entière, vous pouvez faire:

int x = (int) t.totalMinutes;
27
Habib
 private void dateTimePicker4_ValueChanged(object sender, EventArgs e)
    {
        TimeSpan t = dateTimePicker4.Value.ToLocalTime() - dateTimePicker3.Value.ToLocalTime();
        int x = int.Parse(t.Minutes.ToString());
        y = x;
    }

Avez-vous essayé de le changer en int x = int.Parse(t.Minutes.ToString());?

De: http://msdn.Microsoft.com/en-us/library/system.timespan.aspx

4
Lawrence Wong