c# – 使用月历来获取所选周的星期六日期值

我有点担心这个问题.
当我选择特定日期时,如何获得月历日历值.

例如:我在月历上选择了2月14日.选择它后会有一个提示,其中包含星期六“2011年2月19日”或我选择的2月24日,提示显示“2011年2月26日”.

解决方法

// This function will return the next saturday for a datetime
DateTime NextSaturday(DateTime Now)
{
   while (Now.DayOfWeek != DayOfWeek.Saturday)
      Now = Now.AddDays(1);
   return Now;
}

UPDATE

差不多2年后,我想改变这个答案.

这些天我永远不会为一个类创建一个“实用功能”.我现在总是“延伸”课程.签名现在应该是DateTime.Next(DayOfWeek).有关扩展的更多详细信息,请参见http://msdn.microsoft.com/en-us/library/vstudio/bb383977.aspx.

逻辑也错了.如果现在是星期六,那么它将始终返回当前日期.我想大多数来电者都希望现在7天回来.所以第一个变化是:

DateTime NextSaturday(DateTime Now)
{
   do {
      Now = Now.AddDays(1);
   } while (Now.DayOfWeek != DayOfWeek.Saturday)

   return Now;
 }

然后将功能更改为与一周中的任何一天一起使用:

DateTime Next(DateTime Now,DayOfWeek nextDay)
{
   do {
      Now = Now.AddDays(1);
   } while (Now.DayOfWeek != nextDay)

   return Now;
 }

现在“扩展”DateTime类以支持Next(DayOfWeek)

namespace DateTime.Extensions
 {
   public static class DateTimeExtensions
   {
     public static DateTime Next(this DateTime Now,DayOfWeek nextDay)
     {
        do {
          Now = Now.AddDays(1);
        } while (Now.DayOfWeek != nextDay)

        return Now;
      }
   }
 }

相关文章

原文地址:http://msdn.microsoft.com/en-us/magazine/cc163...
前言 随着近些年微服务的流行,有越来越多的开发者和团队所采...
最近因为比较忙,好久没有写博客了,这篇主要给大家分享一下...
在多核CPU在今天和不久的将来,计算机将拥有更多的内核,Mic...
c语言输入成绩怎么判断等级
字符型数据在内存中的存储形式是什么