1

我在 C# win application 中有两个月历,我需要计算两者之间的时间。

我需要两三个月或几年之间的多少天

我需要两个不同年份之间的几个月。

当我使用:

月历.selectstart.month;

该命令只是计算同一年月份之间的差异,但是当移动到明年时,该值是负数。

几天都一样,我使用:

monthcalender.selectstart.dayofyear;

4

1 回答 1

4

monthcalendar.SelectionStart 是一个DateTime结构,您可以使用它进行计算。减去两个日期将得到一个TimeSpan结构,该结构具有对您有用的各种属性。

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

如果您想使用 的 Month 属性DateTime,可以执行以下操作:

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

不过,这将使一个月中的几天不在等式中。

于 2009-08-29T14:05:10.433 回答