2009-08-29 6 views
1

J'ai deux monthcalender dans l'application C# win, et j'ai besoin de calculer la période entre alors.calculer la période entre deux monthcalender en C#

J'ai besoin combien de jours entre deux ou trois mois ou années aussi

J'ai besoin combien de mois entre dépanneuses différentes années.

Quand j'utilise:

monthcalender.selectstart.month; Cette commande calcule simplement la différence entre les mois de la même année, mais lorsque vous passez à l'année suivante, la valeur est négative.

et même pour les jours, je l'utilise:

monthcalender.selectstart.dayofyear;

Répondre

4

monthcalendar.SelectionStart est une structure DateTime, avec laquelle vous pouvez effectuer des calculs. La soustraction de deux dates donnera une structure TimeSpan, qui a diverses propriétés qui devraient vous être utiles.

TimeSpan timeBetween = calendar1.SelectionStart - calendar2.SelectionStart; 
MessageBox.Show("Days between dates: " + timeBetween.TotalDays); 

Si vous voulez utiliser la propriété Mois de la DateTime, vous pouvez faire quelque chose comme:

DateTime d1 = calendar1.SelectionStart; 
DateTime d2 = calendar2.SelectionStart; 
ints monthsBetween = d1.Month + d1.Year * 12 - d2.Month - d2.Year * 12; 

qui laisserait les jours du mois de l'équation bien.