【问题标题】:how to limit interval by day name in scheduler?如何在调度程序中按日期名称限制间隔?
【发布时间】:2016-10-14 19:25:17
【问题描述】:

我有一个来自 devexpress 的调度程序组件。我想按日期名称而不是日期设置限制间隔。我正在使用此代码

  schedulerControl1.ActiveViewType = evExpress.XtraScheduler.SchedulerViewType.WorkWeek;
  schedulerControl1.LimitInterval.Start = Datetime.today;
  schedulerControl1.LimitInterval.End = Datetime.today;

当我试图按天(明天或昨天)查看它时,它只会预览我今天的日期。我知道我使用限制间隔错误。我如何修改它以按日期名称限制它我想要的代码是这样的

  schedulerControl1.LimitInterval.Start = Day.Monday;
  schedulerControl1.LimitInterval.End = Day.Sunday;

它给出cannot implicitly convert type system.windows.form.day to system.datetime的错误

我正在使用限制,所以用户无法在 10 october 之前和 '16 october` 之后滚动

在这个帖子之前,我已经问过了,但它没有给我想要的东西。并且 iam 也已经尝试过参考链接。 disable arrow key on scheduler control

【问题讨论】:

    标签: c# winforms devexpress


    【解决方案1】:

    以下方法根据您的要求使用完整来获取本周的第一个和最后一个日期

    public static DateTime FirstDayOfWeek(DateTime date)
        {
            DayOfWeek fdow = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.FirstDayOfWeek;
            int offset = fdow - date.DayOfWeek;
            DateTime fdowDate = date.AddDays(offset+1);
            return fdowDate;
        }
    
        public static DateTime LastDayOfWeek(DateTime date)
        {
            DateTime ldowDate = FirstDayOfWeek(date).AddDays(6);
            return ldowDate;
        }
    

    然后做

     schedulerControl1.LimitInterval.Start = FirstDayOfWeek(DateTime.Now);
      schedulerControl1.LimitInterval.End = LastDayOfWeek(DateTime.Now);
    

    【讨论】:

    • 感谢我正在寻找的人。首先,当我尝试这个来实现这个代码时,它不会像我所期望的那样工作。当我调试它时,一周的第一天是星期三,我想知道为什么。但是当我看到 pc 的设置格式时,一周的第一天是星期三。所以当我把它改成星期天时它工作正常:)
    【解决方案2】:

    我认为 DX 论坛中的这篇文章应该对您有所帮助(附有完整的代码示例): https://www.devexpress.com/Support/Center/Question/Details/Q534116

    基本上,这个想法是您需要“定义一个空的 DateHeaderTemplate 并用与相应工作日关联的七个资源填充 Resource 集合”。查看实际示例,了解 DX 支持人员是如何做到的。

    如果理解上述示例有困难,请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-02
      • 1970-01-01
      • 1970-01-01
      • 2012-07-28
      • 2021-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多